• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料 > Java多線程的生命周期是多久
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料>Java多線程的生命周期是多久

Java多線程的生命周期是多久

來(lái)源:廣州達(dá)內(nèi)教育        時(shí)間:2023-05-30        熱度:35℃        返回列表

    任何的物體都是有生命周期的,不同的物品生命周期也是不一樣的,就拿java多線程的生命周期來(lái)說(shuō)吧,多線程的生命周期是分為五個(gè)階段的,分別是新建狀態(tài)(New)、可運(yùn)行狀態(tài)(Runnable)、運(yùn)行狀態(tài)(Running)、阻塞狀態(tài)(Blocked)、等待狀態(tài)(Waiting)和死亡狀態(tài)(Terminated)。下面達(dá)內(nèi)科技就以這些狀態(tài)來(lái)給大家講解下他們的生命周期。

  1. 新建狀態(tài)(New)


  創(chuàng)建一個(gè)線程對(duì)象后,該線程對(duì)象就處于新建狀態(tài),此時(shí)它不能運(yùn)行,和其它Java對(duì)象一樣,僅僅由Java虛擬機(jī)為其分配了內(nèi)存,沒(méi)有表現(xiàn)出任何線程的動(dòng)態(tài)特征。


  2. 可運(yùn)行狀態(tài)(Runnable)


  當(dāng)線程對(duì)象調(diào)用了start()方法后,該線程就進(jìn)入可運(yùn)行狀態(tài)。處于可運(yùn)行狀態(tài)的線程位于可運(yùn)行池中,此時(shí)它只是具備了運(yùn)行的條件,能否獲得CPU的使用權(quán)開始運(yùn)行,還需要等待系統(tǒng)的調(diào)度。


  3. 運(yùn)行狀態(tài)(Running)


  如果處于可運(yùn)行狀態(tài)的線程獲得了CPU的使用權(quán),開始執(zhí)行run()方法中的線程執(zhí)行體,則該線程處于運(yùn)行狀態(tài)。當(dāng)一個(gè)線程啟動(dòng)后,它不可能一直處于運(yùn)行狀態(tài)(除非它的線程執(zhí)行體足夠短,瞬間就結(jié)束了),系統(tǒng)會(huì)為每一個(gè)線程分配一小段的時(shí)間來(lái)處理任務(wù),當(dāng)線程用完了這段時(shí)間,系統(tǒng)就會(huì)剝奪該線程占用的CPU資源,讓其它線程獲得執(zhí)行的機(jī)會(huì)。需要注意的是,只有處于可運(yùn)行狀態(tài)的線程才可能轉(zhuǎn)換到運(yùn)行狀態(tài)。


  4. 阻塞狀態(tài)(Blocked)和等待狀態(tài)(Waiting)


  如果線程由于某些原因放棄了CPU的的使用權(quán),暫時(shí)停止運(yùn)行,此線程就進(jìn)入了阻塞或者等待狀態(tài),阻塞或者等待狀態(tài)都是由運(yùn)行狀態(tài)轉(zhuǎn)換而來(lái)的。下面列舉出線程進(jìn)入阻塞狀態(tài)或等待狀態(tài)的原因。


  5. 死亡狀態(tài)(Terminated)


  線程的run()方法正常執(zhí)行完畢或者線程拋出一個(gè)未捕獲的異常(Exception)、錯(cuò)誤(Error),線程就進(jìn)入死亡狀態(tài)。一旦進(jìn)入死亡狀態(tài),線程將不再擁有運(yùn)行的資格,也不能再轉(zhuǎn)換到其它的狀態(tài)。


  以上就是達(dá)內(nèi)科技給大家整理的關(guān)于java多線程的生命周期了,如果說(shuō)你還想了解更多關(guān)于java的專業(yè)的知識(shí)的話可以點(diǎn)擊我們的在線咨詢,我們會(huì)有專業(yè)的講師來(lái)給你解答。達(dá)內(nèi)科技是一家專業(yè)的java培訓(xùn)機(jī)構(gòu),如果說(shuō)你想要學(xué)習(xí)java的話那么達(dá)內(nèi)科技?xì)g迎大家來(lái)我們公司的java培訓(xùn)班進(jìn)行實(shí)地考察,也可以點(diǎn)擊我們文章下面的獲取試聽(tīng)資格按鈕來(lái)獲取我們的java課程免費(fèi)試聽(tīng)資格,在試聽(tīng)中可以更加深入的了解達(dá)內(nèi)科技。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部