public enum State {
/**
* new狀態(tài)是線程實例化后還從未執(zhí)行start()方法時的狀態(tài)
*/
NEW,
/**
* runnable狀態(tài)是線程進人運行的狀態(tài)
*/
RUNNABLE,
/**
* blocked狀態(tài)出現在某一個線程在等待鎖的時候。
*/
BLOCKED,
/**
* waiting是線程執(zhí)行了Object.wait()方法后所處的狀態(tài)
*/
WAITING,
/**
* timed_waiting代表線程執(zhí)行了Thread.sleep()方法,
* 呈等待狀態(tài)驾窟,等待時間到達剑辫,繼續(xù)向下運行。
*/
TIMED_WAITING,
/**
* terinated是線程被銷毀時的狀態(tài)蜒犯,線程完全執(zhí)行了
*/
TERMINATED;
}
//該方法能獲取線程的狀態(tài)
public State getState() {
// get current thread state
return sun.misc.VM.toThreadState(threadStatus);
}