建立狀态 new對象
就緒狀态 start()後就緒,但不意味着立即執行
阻塞狀态 Thread.sleep(),調用sleep、wait或者同步鎖定時,進入阻塞,阻塞結束後,重新就緒,等待cpu排程
運作狀态 cpu排程後,線程開始執行,進入運作狀态
死亡狀态 線程結束,一旦進入死亡,就不能再啟動了
不推薦使用JDK提供的stop()、destroy()方法。
推薦線程自己停止下來。
建議使用一個标志位進行終止變量,如:當flag=false,則終止線程運作。如:龜兔賽跑代碼
終止線程例子:
sleep(時間)指定目前線程阻塞的毫秒數;
sleep存在異常 InterruptedException;
sleep時間達到後線程進入就緒狀态;
sleep可以模拟網絡延時,倒計時等;
每一個對象都會有一個鎖,sleep不會釋放鎖。
模拟延時
模拟時鐘