淺談線程的幾種可用狀態(tài)
更新時(shí)間:2017年09月01日 09:19:29 投稿:jingxian
下面小編就為大家?guī)硪黄獪\談線程的幾種可用狀態(tài)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
1. 新建( new ):新創(chuàng)建了一個(gè)線程對(duì)象。
2. 可運(yùn)行( runnable ):線程對(duì)象創(chuàng)建后,其他線程(比如 main 線程)調(diào)用了該對(duì)象 的 start ()方法。該狀態(tài)的線程位于可運(yùn)行線程池中,等待被線程調(diào)度選中,獲 取 cpu 的使用權(quán) 。
3. 運(yùn)行( running ):可運(yùn)行狀態(tài)( runnable )的線程獲得了 cpu 時(shí)間片( timeslice ) ,執(zhí)行程序代碼。
4. 阻塞( block ):阻塞狀態(tài)是指線程因?yàn)槟撤N原因放棄了 cpu 使用權(quán),也即讓出了 cpu timeslice ,暫時(shí)停止運(yùn)行。直到線程進(jìn)入可運(yùn)行( runnable )狀態(tài),才有 機(jī)會(huì)再次獲得 cpu timeslice 轉(zhuǎn)到運(yùn)行( running )狀態(tài)。阻塞的情況分三種:
(一). 等待阻塞:運(yùn)行( running )的線程執(zhí)行 o . wait ()方法, JVM 會(huì)把該線程放 入等待隊(duì)列( waitting queue )中。
(二). 同步阻塞:運(yùn)行( running )的線程在獲取對(duì)象的同步鎖時(shí),若該同步鎖 被別的線程占用,則 JVM 會(huì)把該線程放入鎖池( lock pool )中。
(三). 其他阻塞:運(yùn)行( running )的線程執(zhí)行 Thread . sleep ( long ms )或 t . join ()方法,或者發(fā)出了 I / O 請(qǐng)求時(shí), JVM 會(huì)把該線程置為阻塞狀態(tài)。 當(dāng) sleep ()狀態(tài)超時(shí)、 join ()等待線程終止或者超時(shí)、或者 I / O 處理完畢時(shí),線程重新轉(zhuǎn)入可運(yùn)行( runnable )狀態(tài)。
5. 死亡( dead ):線程 run ()、 main () 方法執(zhí)行結(jié)束,或者因異常退出了 run ()方法,則該線程結(jié)束生命周期。死亡的線程不可再次復(fù)生。

以上這篇淺談線程的幾種可用狀態(tài)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java servlet、filter、listener、interceptor之間的區(qū)別和聯(lián)系
這篇文章主要介紹了Java servlet、filter、listener、interceptor之間的區(qū)別和聯(lián)系的相關(guān)資料,需要的朋友可以參考下2016-11-11java實(shí)現(xiàn)時(shí)間控制的幾種方案
這篇文章主要介紹了java實(shí)現(xiàn)時(shí)間控制的幾種方案,本文從多個(gè)方面給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07Spring Boot之AOP配自定義注解的最佳實(shí)踐過程
這篇文章主要給大家介紹了關(guān)于Spring Boot之AOP配自定義注解的最佳實(shí)踐過程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11詳解SpringBoot集成消息隊(duì)列的案例應(yīng)用
Message?Queue又名消息隊(duì)列,是一種異步通訊的中間件??梢岳斫鉃猷]局,發(fā)送者將消息投遞到郵局,然后郵局幫我們發(fā)送給具體的接收者,具體發(fā)送過程和時(shí)間與我們無關(guān)。?消息隊(duì)列是分布式系統(tǒng)中重要的組件,消息隊(duì)列主要解決了應(yīng)用耦合、異步處理、流量削鋒等問題2022-04-04SpringBoot整合BootStrap實(shí)戰(zhàn)
這篇文章主要介紹了SpringBoot整合BootStrap實(shí)戰(zhàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09