在Java中,線程有5中不同狀態,分別是:新建(New)、就緒(Runable)、運行(Running)、阻塞(Blocked)和死亡(Dead)。它們之間的轉換圖如下:
上圖有一個例外,調用yield()方法可以讓當前處于運行狀態的線程轉入就緒狀態。如果要測試某線程是否已經死亡,可以使用isAlive()方法,該方法在線程處于就緒、運行、阻塞時放回true,新建和死亡時返回false。不要試圖對一個已經死亡的線程調用start()方法而重新啟動,死亡就是死亡和人一樣,不可能再生。還有也不要對一個線程調用兩次start()方法,這同樣會引發異常。
新聞熱點
疑難解答