當前位置:生活科普幫 >

科技 >科技生活 >

執行緒的幾種狀態

執行緒的幾種狀態

品牌型號:聯想拯救者Y9000P
系統:Windows 11

執行緒的幾種狀態

執行緒的6種狀態:

1、New新建狀態:執行緒剛被建立,start方法之前的狀態。

2、Runnable執行狀態:得到時間片執行中狀態,Ready就緒,未得到時間片就緒狀態。

3、Blocked阻塞狀態:如果遇到鎖,執行緒就會變為阻塞狀態等待另一個執行緒釋放鎖。

4、Waiting等待狀態:無限期等待。

5、Time_Waiting超時等待狀態:有明確結束時間的等待狀態。

6、Terminated終止狀態:當執行緒結束完成之後就會變成此狀態。

執行緒(英語:thread)是作業系統能夠進行運算排程的最小單位。它被包含在程序之中,是程序中的實際運作單位。一條執行緒指的是程序中一個單一順序的控制流,一個程序中可以併發多個執行緒,每條執行緒並行執行不同的任務。在UnixSystemV及SunOS中也被稱為輕量程序(lightweightprocesses),但輕量程序更多指核心執行緒(kernelthread),而把使用者執行緒(userthread)稱為執行緒。

執行緒是獨立排程和分派的基本單位。執行緒可以為作業系統核心排程的核心執行緒,如Win32執行緒;由使用者程序自行排程的使用者執行緒,如Linux平臺的POSIXThread;或者由核心與使用者程序,如Windows7的執行緒,進行混合排程。

同一程序中的多條執行緒將共享該程序中的全部系統資源,如虛擬地址空間,檔案描述符和訊號處理等等。但同一程序中的多個執行緒有各自的呼叫棧(callstack),自己的暫存器環境(registercontext),自己的執行緒本地儲存(thread-localstorage)。

一個程序可以有很多執行緒,每條執行緒並行執行不同的任務。

在多核或多CPU,或支援Hyper-threading的CPU上使用多執行緒程式設計的好處是顯而易見,即提高了程式的執行吞吐率。在單CPU單核的計算機上,使用多執行緒技術,也可以把程序中負責I/O處理、人機互動而常被阻塞的部分與密集計算的部分分開來執行,編寫專門的workhorse執行緒執行密集計算,從而提高了程式的執行效率。


標籤: 執行緒
  • 文章版權屬於文章作者所有,轉載請註明 https://shkpb.com/keji/kejishenghuo/e7w01d.html