學習分享 執行緒

2021-09-22 12:25:36 字數 1095 閱讀 8570

程式:一段靜態的**的組合。

程序:程式的一次執行

執行緒:執行緒就是輕量級進行

執行緒和執行緒之間採用搶占硬體資源的方式。

執行緒的5種狀態:建立,就緒,執行,阻塞,結束

在建立執行緒中,有兩種方式可以建立。

第一種就是 繼承thread類。自己寫乙個執行緒類,繼承thread類,new執行緒類的物件,呼叫start方法。

第二種就是 實現runnable介面(常用)。自己寫乙個類,實現runnable介面,建立該類的執行物件,new thread的物件,把執行物件傳入,呼叫start方法。

什麼需要執行緒池?

建立執行緒和銷毀執行緒的過程比較浪費資源

銷毀執行緒會給jvm壓力

執行緒池:用於存放多個可重複利用的執行緒,當有任務來的時候,就分配乙個執行緒去執行,執行完畢後,執行緒不銷毀,放回執行緒池中。

//建立乙個執行緒池

//corepoolsize 核心執行緒數量

//maximumpoolsize 最大執行緒數量

//keepalivetime 無任務時,執行緒儲存多久

//unit 時間的單位

//workqueue 工作佇列

threadpoolexecutor executor =

newthreadpoolexecutor(5

,10,10

,timeunit.minutes,

newlinkedblockingqueue

<

>()

);//任務

runnable r =()

->

;//執行任務:把任務加入佇列中,等待執行。

executor.

execute

(r);

//關閉執行緒池

executor.

shutdown()

;

**當中,執行任務那一塊,任務可以同時執行很多個。

學習分享 執行緒同步

1.使用同步 塊public void run else 必須保證鎖的唯一性 2.使用同步方法 使用同步方法實現執行緒的同步 public synchronized void synchronizedmethod 思考 鎖是啥?a.這是乙個成員方法 鎖是this b.這是乙個靜態方法 鎖是這個類的c...

學習記錄分享(多執行緒)

1.乙個單cpu的機器,如何同時執行多個執行緒?請簡述其原理 單cpu在任何時間點上,只能執行乙個執行緒,實現同時執行多個執行緒是通過序列,在不同的執行緒之間通過cpu時間片控制切換執行不同的執行緒。2.執行緒的建立 有以下 c 只有主方法乙個執行緒,沒有建立新的執行緒類 3.執行緒的建立 有以下 ...

多執行緒 基礎多執行緒學習分享

程序 程式是靜止,其真正執行時的程式才稱之為程序 執行緒 輕量級程序 light weight process 程序與執行緒區別 執行緒的組成 建立執行緒 主要的兩種方式 a 繼承thread類方法 步驟 1.編寫類 繼承thread 2.重寫run方法 3.建立執行緒物件 4.呼叫start方法啟...