這篇文章主要介紹“Java線程有哪些狀態(tài)”,在日常操作中,相信很多人在Java線程有哪些狀態(tài)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java線程有哪些狀態(tài)”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
10年專注成都網(wǎng)站制作,成都企業(yè)網(wǎng)站定制,個人網(wǎng)站制作服務,為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設計流程、步驟,成功服務上千家企業(yè)。為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及定制高端網(wǎng)站建設服務,專注于成都企業(yè)網(wǎng)站定制,高端網(wǎng)頁制作,對社區(qū)文化墻等多個領域,擁有多年的營銷推廣經(jīng)驗。
1、新建(New):創(chuàng)建后尚未啟動的線程處于這種狀態(tài)。
2、運行(Runnable):包括操作系統(tǒng)線程狀態(tài)中的Running和Ready,也就是處于此狀態(tài)的線程有可 能正在執(zhí)行,也有可能正在等待著操作系統(tǒng)為它分配執(zhí)行時間。
3、期等待(Waiting):處于這種狀態(tài)的線程不會被分配處理器執(zhí)行時間,它們要等待被其他線程顯式喚醒。以下方法會讓線程陷入期的等待狀態(tài):
沒有設置Timeout參數(shù)的Object::wait()方法;
沒有設置Timeout參數(shù)的Thread::join()方法;
LockSupport::park()方法。
4、限期等待(Timed Waiting):處于這種狀態(tài)的線程也不會被分配處理器執(zhí)行時間,不過無須等待被其他線程顯式喚醒,在一定時間之后它們會由系統(tǒng)自動喚醒。以下方法會讓線程進入限期等待狀態(tài):
設置了Timeout參數(shù)的Object::wait()方法;
設置了Timeout參數(shù)的Thread::join()方法;
LockSupport::parkNanos()方法;
LockSupport::parkUntil()方法。
5、阻塞(Blocked):線程被阻塞了,“阻塞狀態(tài)”與“等待狀態(tài)”的區(qū)別是“阻塞狀態(tài)”在等待著獲取到 一個排它鎖,這個事件將在另外一個線程放棄這個鎖的時候發(fā)生;而“等待狀態(tài)”則是在等待一段時 間,或者喚醒動作的發(fā)生。在程序等待進入同步區(qū)域的時候,線程將進入這種狀態(tài)。
6、結束(Terminated):已終止線程的線程狀態(tài),線程已經(jīng)結束執(zhí)行。
Java的基本數(shù)據(jù)類型分為:
1、整數(shù)類型,用來表示整數(shù)的數(shù)據(jù)類型。
2、浮點類型,用來表示小數(shù)的數(shù)據(jù)類型。
3、字符類型,字符類型的關鍵字是“char”。
4、布爾類型,是表示邏輯值的基本數(shù)據(jù)類型。
到此,關于“Java線程有哪些狀態(tài)”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
網(wǎng)頁名稱:Java線程有哪些狀態(tài)
文章來源:http://weahome.cn/article/popoph.html