java中線程的狀態分為6種。
1.?初始(NEW):新創建了一個線程對象,但還沒有調用start()方法。
2.?運行(RUNNABLE):Java線程中將就緒(ready)和運行中(running)兩種狀態籠統的稱為“運行”。
線程對象創建后,其他線程(比如main線程)調用了該對象的start()方法。該狀態的線程位于可運行線程池中,等待被線程調度選中,獲取CPU的使用權,此時處于就緒狀態(ready)。就緒狀態的線程在獲得CPU時間片后變為運行中狀態(running)。
3.?阻塞(BLOCKED):表示線程阻塞于鎖。
4.?等待(WAITING):進入該狀態的線程需要等待其他線程做出一些特定動作(通知或中斷)。
5.?超時等待(TIMED_WAITING):該狀態不同于WAITING,它可以在指定的時間后自行返回。
6.?終止(TERMINATED):表示該線程已經執行完畢。
?
?
?
?
?