執行緒的生命週期主要分為下面5個狀態:
當建立thread類的乙個例項(物件),繼承thread類,實現runnable介面,呼叫callable介面,此執行緒進入新建狀態(未被啟動)
執行緒已被啟動,執行緒物件建立好之後進入就緒狀態,此時會等待獲取cpu的執行權
獲取到cpu執行權之後,執行緒物件開始執行run()方法
如果執行緒物件在執行過程中遇到了wait方法或者sleep方法,或者被另乙個執行緒所阻塞(suspend方法,resume方法恢復),執行緒將會進入到阻塞狀態。執行緒阻塞後要等待其他條件來觸發(notify或者sleep睡眠時間到了),觸發後會繼續執行
執行緒物件執行結束後或被其它執行緒殺死(stop方法),執行緒就進入死亡狀態
執行緒的生命週期畫圖如下:
java多執行緒 執行緒生命週期
本節目標 了解執行緒的宣告週期 了解執行緒的停止操作 乙個新的執行緒建立之後,通過start 方法進入執行狀態,在執行狀態時可以使用yield 進行執行緒禮讓,但是仍然可以執行,使用wait 方法暫停乙個執行緒。suspend resume stop 都會產生死鎖問題,不建議使用。如果想讓執行緒停止...
JAVA 多執行緒 生命週期
1 新建 當乙個執行緒ticktthread1 thread1 new ticktthread1 視窗1 ticket 被new 出來的時候。執行緒就是乙個新建的狀態。2 就緒狀態 當呼叫了start 方法之後。進入就緒狀態。就緒狀態是什麼狀態 某乙個時刻cpu 只能處理乙個執行緒的事物。把時間片分...
java多執行緒的生命週期
執行緒的生命週期 執行緒的狀態分為5種 1.new 新建 執行緒物件已經被建立,但是還沒有呼叫該例項的start 方法 此時執行緒尚未獲取執行所需的任何系統資源 2.runnable 就緒 執行緒已經呼叫start 方法,可以被排程執行 此時執行緒已經獲取執行所需的系統資源 但是此時的執行緒並不是正...