程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 線程的狀態

線程的狀態

編輯:關於JAVA

一個線程可以有四種狀態:

(1) 新(New):線程對象已經創建,但尚未啟動,所以不可運行。

(2) 可運行(Runnable):意味著一旦時間分片機制有空閒的CPU周期提供給一個線程,那個線程便可立即開始運行。因此,線程可能在、也可能不在運行當中,但一旦條件許可,沒有什麼能阻止它的運行——它既沒有“死”掉,也未被“堵塞”。

(3) 死(Dead):從自己的run()方法中返回後,一個線程便已“死”掉。亦可調用stop()令其死掉,但會產生一個違例——屬於Error的一個子類(也就是說,我們通常不捕獲它)。記住一個違例的“擲”出應當是一個特殊事件,而不是正常程序運行的一部分。所以不建議你使用stop()(在Java 1.2則是堅決反對)。另外還有一個destroy()方法(它永遠不會實現),應該盡可能地避免調用它,因為它非常武斷,根本不會解除對象的鎖定。

(4) 堵塞(Blocked):線程可以運行,但有某種東西阻礙了它。若線程處於堵塞狀態,調度機制可以簡單地跳過它,不給它分配任何CPU時間。除非線程再次進入“可運行”狀態,否則不會采取任何操作。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved