java中線程的狀態(tài)學(xué)習(xí)筆記
java開發(fā)中,我們經(jīng)常會遇到線程的問題,比如你做一個商城,就需要考慮它的并發(fā)問題等等,今天給大家分享一下java中線程的狀態(tài)
先說線程的第一個狀態(tài),是新建狀態(tài),這個是線程剛剛創(chuàng)建的時候,如:
new Thread(),具體如圖

線程的第二種狀態(tài)是可執(zhí)行狀態(tài),就是調(diào)用了start方法后的狀態(tài),當(dāng)然了,一個運行的狀態(tài),他有可能是正在運行的,也有可能是沒有運行的,只是他的狀態(tài)是可運行的狀態(tài),具體如圖

第三種狀態(tài)是被阻塞或者處于等待的線程,處于這種狀態(tài)下的線程是不活動且不運行的,比如說調(diào)用了wait方法等都會造成等待的情況,具體如圖

第四種狀態(tài)就是被終止的狀態(tài),這種狀態(tài)和和上面的狀態(tài)不一樣,上面阻塞狀態(tài)是可以在激活的,終止之后要想在啟動,只能重新調(diào)用start方法,終止也有兩種方式,第一種是run方法的正常退出,第二種是因為沒有捕獲到異常而意外終止了,或者使用stop也可以,具體如圖

最后給大家看一個關(guān)于線程之間的關(guān)系圖,包括新建,運行,阻塞和被終止之間的關(guān)系,具體如圖

相關(guān)文章
SpringBoot+Mybatis使用Enum枚舉類型總是報錯No enum constant&n
這篇文章主要介紹了SpringBoot+Mybatis使用Enum枚舉類型總是報錯No enum constant XX問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
Nacos Namespace/Group/DataID三者關(guān)系解讀
本文介紹了Nacos中的命名空間(Namespace)、配置分組(Group)和配置集ID(DataID)的概念,并詳細(xì)說明了它們之間的關(guān)系和應(yīng)用場景,同時,還提供了三者在不同環(huán)境下的配置切換方案,包括DataID方案、Group方案和命名空間方案2024-12-12
SpringBoot日志進(jìn)階實戰(zhàn)之Logback配置經(jīng)驗和方法
本文給大家介紹在SpringBoot中使用Logback配置日志的經(jīng)驗和方法,并提供了詳細(xì)的代碼示例和解釋,包括:滾動文件、異步日志記錄、動態(tài)指定屬性、日志級別、配置文件等常用功能,覆蓋日常Logback配置開發(fā)90%的知識點,感興趣的朋友跟隨小編一起看看吧2023-06-06

