Docker 的優(yōu)點(diǎn)
616
2025-04-03
線程的生命周期
1.線程產(chǎn)生
2.線程存在 ? 運(yùn)行 ? 中斷
3.線程消亡
線程產(chǎn)生
1.Java提供了線程類Thread
2.Thread類在java.lang包中,使用該類不需要import語句進(jìn)行引用
3.可以通過繼承Thread類或者實(shí)現(xiàn)Runnable接口的方式創(chuàng)建線程對(duì)象
線程存在——運(yùn)行
1.創(chuàng)建了線程對(duì)象之后,它需要調(diào)用start()方法獲取使用CPU資源的排隊(duì)機(jī)會(huì)
2.輪到某個(gè)線程運(yùn)行時(shí),JVM(Java虛擬機(jī))就把CPU的使用權(quán)交給這個(gè)線程,并調(diào)用這個(gè)線程的run()方法運(yùn)行該線程
線程存在——中斷
可以引起線程中斷的情況
? JVM將CPU的使用權(quán)從當(dāng)前線程切換給其他線程
? 線程在運(yùn)行期間執(zhí)行了sleep(int millis)方法,進(jìn)入休眠狀態(tài),休眠時(shí)間結(jié)束或者休眠被吵醒(interrupt),才能退出休眠狀態(tài)
? 線程在運(yùn)行期間執(zhí)行了wait()方法,則這個(gè)線程中斷,進(jìn)入等待狀態(tài)。可以使用notify()或者notifyAll()結(jié)束等待狀態(tài)
? 線程在運(yùn)行期間,執(zhí)行了阻塞線程的某個(gè)操作,例如讀取鍵盤輸入的字符等,則線程中斷
線程消亡
線程中的所有任務(wù)執(zhí)行完畢,線程即消亡。
線程執(zhí)行過程中被提前強(qiáng)制終止,線程會(huì)消亡。
Java 任務(wù)調(diào)度
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。