java中的線程狀態(tài)有幾種-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)java中的線程狀態(tài)有幾種,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

目前創(chuàng)新互聯(lián)公司已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、遼陽網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

線程的狀態(tài)

線程有如下6種狀態(tài):

New(新創(chuàng)建 )

Runnable(可運(yùn)行)

Blocked(被阻塞)

Waiting(等待)

Timed waiting(計(jì)時(shí)等待)

Terminated(被終止)

其中,要獲取一個(gè)線程當(dāng)前的狀態(tài),可以調(diào)用getState 方法。

下面,對每種狀態(tài)進(jìn)行解釋

1.新創(chuàng)建線程(New)

當(dāng)我們使用new操作符來創(chuàng)建了一個(gè)線程時(shí),如使用new Thread(r)時(shí),線程還未開始運(yùn)行,線程中的代碼也沒有開始執(zhí)行,此時(shí)就成為New狀態(tài)。

2.可運(yùn)行線程(Runnable)

當(dāng)我們對一個(gè)線程執(zhí)行start()方法后,就會啟動該線程。但是注意,一個(gè)處于可運(yùn)行狀態(tài)的線程可能正在運(yùn)行也可能沒有運(yùn)行,這時(shí)取決于操作系統(tǒng)的時(shí)間片調(diào)度。搶占式調(diào)度系統(tǒng)會給每一個(gè)線程分配一個(gè)時(shí)間片來運(yùn)行,在時(shí)間片使用完后,操作系統(tǒng)就會剝奪它運(yùn)行的權(quán)力,并更根據(jù)優(yōu)先級選擇下一個(gè)要運(yùn)行的線程。

3.被阻塞、等待狀態(tài)(Blocked、waiting、Timed waiting)

當(dāng)一個(gè)線程處于阻塞和等待狀態(tài)時(shí),它不做任何工作,也不執(zhí)行任何代碼。直到操作系統(tǒng)重新激活它。

當(dāng)一個(gè)線程試圖獲取一個(gè)內(nèi)部對象鎖,而這個(gè)鎖又被其它線程持有時(shí),該線程就進(jìn)入阻塞狀態(tài),當(dāng)其它線程釋放這個(gè)鎖后,并且線程調(diào)度器允許該線程持有它時(shí),該線程將會變成非阻塞狀態(tài)。

當(dāng)線程等待另一個(gè)線程通知調(diào)度器一個(gè)條件時(shí),它自己就進(jìn)入等待狀態(tài),再調(diào)用Object.wait方法或者Thread.join方法時(shí),就會出現(xiàn)這種情況。被阻塞狀態(tài)和等待狀態(tài)時(shí)大有不同的。

有幾個(gè)方法有一個(gè)超時(shí)參數(shù)。調(diào)用它們導(dǎo)致線程進(jìn)入計(jì)時(shí)等待狀態(tài)這一狀態(tài)將一直保存到超時(shí)期滿或者接收到適當(dāng)?shù)耐ㄖв谐瑫r(shí)參數(shù)的方法有:Thread.sleepObject.wait、Thread.joinLock,tryLock 以及 Condition.await 的計(jì)時(shí)版。

4.被終止的線程

線程終止有兩種原因:

因?yàn)閞un()方法執(zhí)行完畢正常退出

因?yàn)橐粋€(gè)沒有捕獲的異常而終止了run方法導(dǎo)致意外死亡

5.總結(jié)

java中的線程狀態(tài)有幾種

看完上述內(nèi)容,你們對java中的線程狀態(tài)有進(jìn)一步的了解嗎?如果還想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道,感謝各位的閱讀。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前標(biāo)題:java中的線程狀態(tài)有幾種-創(chuàng)新互聯(lián)
文章位置:http://muchs.cn/article48/ddsiep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、域名注冊虛擬主機(jī)、網(wǎng)頁設(shè)計(jì)公司、網(wǎng)站制作、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營