Java基礎教程:多線程基礎——線程的狀態

Java基礎教程:多線程基礎——線程的狀態

線程的狀態

  在Java中,線程有6種狀態,分別爲:

  • 初始:NEW
  • 運行:RUNNABLE
  • 阻塞:BLOCKED
  • 等待:WAIT
  • 超時等待:TIMED_WAIT
  • 終止:TERMINAL

  這六種狀態分別對應於Thread.State中的枚舉類型

初始態

  初始態表示一個線程剛被初始化,即new Thread()

Thread thread = new Thread();
System.out.println(thread.getState());

//Output:NEW

  這個沒什麼好說的,也是最簡單。

運行態

  當調用一個Thread對象的start方法後,該線程進入運行態。運行態的名字是很有迷惑性的,其實運行態再細分還可以分爲兩個子狀態:

  • Ready:調用start後,該線程放入可運行線程池中,等待被調度,獲得CPU運行權
  • Running:獲得CPU時間片後變爲運行中狀態

  也即是就緒和運行中都是運行態,一定要謹記!

阻塞態

  阻塞態可能理解就要上一個臺階了,

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章