線程可以有6種狀態(tài):
- New(新創(chuàng)建)
當(dāng)用new創(chuàng)建一個線程時盐股,此時為new狀態(tài)钱豁。 - Runnable(可運行)
新建的線程調(diào)用start()方法之后,線程變?yōu)榭蛇\行狀態(tài)疯汁,可運行狀態(tài)的線程可能在運行也可能沒運行牲尺,這取決于操作系統(tǒng)給線程提供運行的時間。 - 被阻塞(Blocked)
當(dāng)線程準(zhǔn)備運行的時候幌蚊,發(fā)現(xiàn)請求的內(nèi)部對象鎖被其他線程持有谤碳,線程將進(jìn)入阻塞狀態(tài)溃卡。只有當(dāng)其他線程釋放該鎖,且線程調(diào)度器允許本線程持有它的時候估蹄,線程將轉(zhuǎn)變?yōu)榉亲枞麪顟B(tài)塑煎。 - 等待(Waiting)
當(dāng)線程等待另一個線程通知線程調(diào)度器一個條件時,他自己進(jìn)入等待狀態(tài)臭蚁。 - 計時等待(Timed waiting)
調(diào)用帶超時參數(shù)方法的線程將進(jìn)入計時等待最铁。此狀態(tài)一直持續(xù)到超時或者接收到適當(dāng)?shù)耐ㄖ?/li> - 終止(Terminated)
run方法正常退出而死亡;
因為一個未捕獲的異常終止當(dāng)前的run方法意外死亡垮兑;
可以調(diào)用stop方法殺死線程冷尉,此方法不安全,已標(biāo)注為Deprecated系枪,不建議使用雀哨。