全國(guó)計(jì)算機(jī)等級(jí)考試Java語(yǔ)言程序設(shè)計(jì)輔導(dǎo)(99)
中華IT學(xué)院 【
大 中 小】 [ 2016年3月17日 ]
線程經(jīng)過(guò)其生命周期的各個(gè)階段。下圖顯示了一個(gè)線程完整的生命周期。
- 新?tīng)顟B(tài): 一個(gè)新產(chǎn)生的線程從新?tīng)顟B(tài)開(kāi)始了它的生命周期。它保持這個(gè)狀態(tài)知道程序start這個(gè)線程。
- 運(yùn)行狀態(tài):當(dāng)一個(gè)新?tīng)顟B(tài)的線程被start以后,線程就變成可運(yùn)行狀態(tài),一個(gè)線程在此狀態(tài)下被認(rèn)為是開(kāi)始執(zhí)行其任務(wù)
- 就緒狀態(tài):當(dāng)一個(gè)線程等待另外一個(gè)線程執(zhí)行一個(gè)任務(wù)的時(shí)候,該線程就進(jìn)入就緒狀態(tài)。當(dāng)另一個(gè)線程給就緒狀態(tài)的線程發(fā)送信號(hào)時(shí),該線程才重新切換到運(yùn)行狀態(tài)。
- 休眠狀態(tài): 由于一個(gè)線程的時(shí)間片用完了,該線程從運(yùn)行狀態(tài)進(jìn)入休眠狀態(tài)。當(dāng)時(shí)間間隔到期或者等待的時(shí)間發(fā)生了,該狀態(tài)的線程切換到運(yùn)行狀態(tài)。
- 終止?fàn)顟B(tài): 一個(gè)運(yùn)行狀態(tài)的線程完成任務(wù)或者其他終止條件發(fā)生,該線程就切換到終止?fàn)顟B(tài)。
線程的優(yōu)先級(jí)
每一個(gè)Java線程都有一個(gè)優(yōu)先級(jí),這樣有助于操作系統(tǒng)確定線程的調(diào)度順序。Java優(yōu)先級(jí)在MIN_PRIORITY(1)和MAX_PRIORITY(10)之間的范圍內(nèi)。默認(rèn)情況下,每一個(gè)線程都會(huì)分配一個(gè)優(yōu)先級(jí)NORM_PRIORITY(5)。
具有較高優(yōu)先級(jí)的線程對(duì)程序更重要,并且應(yīng)該在低優(yōu)先級(jí)的線程之前分配處理器時(shí)間。然而,線程優(yōu)先級(jí)不能保證線程執(zhí)行的順序,而且非常依賴于平臺(tái)。
創(chuàng)建一個(gè)線程
Java提供了兩種創(chuàng)建線程方法:
- 通過(guò)實(shí)現(xiàn)Runable接口;
- 通過(guò)繼承Thread類本身。
免責(zé)申明 --------------------------------------------------------------------------------------
以上內(nèi)容僅代表原創(chuàng)者觀點(diǎn),其內(nèi)容未經(jīng)本站證實(shí),中華考試網(wǎng)對(duì)以上內(nèi)容的真實(shí)性、完整性不作任何保證或承諾,轉(zhuǎn)載目的在于傳遞更多信息,由此產(chǎn)生的后果與中華考試網(wǎng)無(wú)關(guān);如以上轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們
,我們將會(huì)及時(shí)處理。