執行圖如下:
1,建立狀態
在程式中用構造方法建立了乙個執行緒物件後,新的執行緒物件便處於新建狀態,此時,它已經有了相應的
記憶體空間和其他資源,但還處於不可執行狀態。新建乙個執行緒物件可採用thread 類的構造方法來實現, 例
如,「thread thread=new thread();」。
2,就緒狀態
新建執行緒物件後,呼叫該執行緒的start()方法就可以啟動執行緒。當執行緒啟動時,執行緒進入就緒狀態。此時,
執行緒將進入執行緒佇列排隊,等待cpu 服務,這表明它已經具備了執行條件。
3,執行狀態
當就緒狀態的執行緒被呼叫並獲得處理器資源時,執行緒就進入了執行狀態。此時,自動呼叫該執行緒物件
的run()方法。run()方法定義了該執行緒的操作和功能。
4,堵塞狀態
乙個正在執行的執行緒在某些特殊情況下,如被人為掛起或需要執行耗時的輸入/輸出操作時,將讓出
cpu
並暫時中止自己的執行,進入堵塞狀態。堵塞時,執行緒不能進入排隊佇列,只有當引起堵塞的原因被
消除後,執行緒才可以轉入就緒狀態。
5,死亡狀態
執行緒呼叫stop()方法時或run()方法執行結束後,即處於死亡狀態。處於死亡狀態的執行緒不具有繼續運
行的能力。
Java多執行緒 執行緒狀態
from 一.執行緒狀態型別 1.新建狀態 new 新建立了乙個執行緒物件。2.就緒狀態 runnable 執行緒物件建立後,其他執行緒呼叫了該物件的start 方法。該狀態的執行緒位於可執行執行緒池中,變得可執行,等待獲取cpu的使用權。3.執行狀態 running 就緒狀態的執行緒獲取了cpu,...
Java多執行緒 執行緒狀態
一.執行緒狀態型別 1.新建狀態 new 新建立了乙個執行緒物件。2.就緒狀態 runnable 執行緒物件建立後,其他執行緒呼叫了該物件的start 方法。該狀態的執行緒位於可執行執行緒池中,變得可執行,等待獲取cpu的使用權。3.執行狀態 running 就緒狀態的執行緒獲取了cpu,執行程式 ...
java多執行緒 執行緒狀態轉換
img 1.新建 new 新建立了乙個執行緒物件。2.可執行 runnable 執行緒物件建立後,其他執行緒 比如main執行緒 呼叫了該物件的start 方法。該狀態的執行緒位於可執行執行緒池中,等待被執行緒排程選中,獲取cpu 的使用權 3.執行 running 可執行狀態 runnable 的...