1.建立狀態,執行緒剛剛建立還未呼叫start方法。
2.就緒狀態,呼叫start方法,還未搶到cpu執行權。
3.執行狀態,搶到cpu執行權,執行run方法。
4.阻塞狀態,包含sleep和wait
1)sleep使先執行緒處於睡眠狀態,期間讓出cpu使用權,不釋放資源。
2)wait是執行緒處於等待狀態,期間讓出cpu使用權,釋放資源,呼叫notify或者notifyall被喚醒,但是不會立刻執行,會跟隨其他執行緒一起爭奪cpu使用權,搶到了才會執行。
5.死亡狀態,存在三種情況
1)run方法執行完畢死亡
2)執行緒丟擲exception或error
3)呼叫stop方法強行停止。該方法過於暴力,已被廢棄
執行緒的五種狀態
1 新建狀態 new 當執行緒物件對建立後,即進入了新建狀態,如 thread t new mythread 2 就緒狀態 runnable 當呼叫執行緒物件的start 方法 t.start 執行緒即進入就緒狀態。處於就緒狀態的執行緒,只是說明此執行緒已經做好了準備,隨時等待cpu排程執行,並不是...
Java執行緒的五種狀態
new 乙個執行緒被建立但是沒有呼叫start方法 runnable 可執行的執行緒,即執行緒執行了start方法之後,正在執行或者正在等待某個資源 blocked 執行緒等待鎖來進入同步方法或 塊。waiting 乙個執行緒正在等待另乙個執行緒來喚醒,可能是由於呼叫了以下方法 timed wait...
Python 執行緒的五種狀態
執行緒被掛起。例如呼叫sleep 執行緒被掛起,睡眠時間結束後,程式到了就緒狀態。或者join 阻塞執行緒,待子執行緒返回時,主線程再繼續執行 def printthreadname for i in range 5 print 當前執行的執行緒 執行到第次 format threadname th...