驍龍8gen1和天璣9000哪個(gè)好性能更強(qiáng) 區(qū)別對比分析
2023-01-30
更新時(shí)間:2022-09-22 07:45:11作者:智慧百科
品牌型號(hào):聯(lián)想拯救者Y9000P
系統(tǒng):Windows 11
線程的6種狀態(tài):
1、New新建狀態(tài):線程剛被創(chuàng)建,start方法之前的狀態(tài)。
2、Runnable運(yùn)行狀態(tài):得到時(shí)間片運(yùn)行中狀態(tài),Ready就緒,未得到時(shí)間片就緒狀態(tài)。
3、Blocked阻塞狀態(tài):如果遇到鎖,線程就會(huì)變?yōu)樽枞麪顟B(tài)等待另一個(gè)線程釋放鎖。
4、Waiting等待狀態(tài):無限期等待。
5、Time_Waiting超時(shí)等待狀態(tài):有明確結(jié)束時(shí)間的等待狀態(tài)。
6、Terminated終止?fàn)顟B(tài):當(dāng)線程結(jié)束完成之后就會(huì)變成此狀態(tài)。
線程(英語:thread)是操作系統(tǒng)能夠進(jìn)行運(yùn)算調(diào)度的最小單位。它被包含在進(jìn)程之中,是進(jìn)程中的實(shí)際運(yùn)作單位。一條線程指的是進(jìn)程中一個(gè)單一順序的控制流,一個(gè)進(jìn)程中可以并發(fā)多個(gè)線程,每條線程并行執(zhí)行不同的任務(wù)。在Unix System V及SunOS中也被稱為輕量進(jìn)程(lightweight processes),但輕量進(jìn)程更多指內(nèi)核線程(kernel thread),而把用戶線程(user thread)稱為線程。
線程是獨(dú)立調(diào)度和分派的基本單位。線程可以為操作系統(tǒng)內(nèi)核調(diào)度的內(nèi)核線程,如Win32線程;由用戶進(jìn)程自行調(diào)度的用戶線程,如Linux平臺(tái)的POSIX Thread;或者由內(nèi)核與用戶進(jìn)程,如Windows 7的線程,進(jìn)行混合調(diào)度。
同一進(jìn)程中的多條線程將共享該進(jìn)程中的全部系統(tǒng)資源,如虛擬地址空間,文件描述符和信號(hào)處理等等。但同一進(jìn)程中的多個(gè)線程有各自的調(diào)用棧(call stack),自己的寄存器環(huán)境(register context),自己的線程本地存儲(chǔ)(thread-local storage)。
一個(gè)進(jìn)程可以有很多線程,每條線程并行執(zhí)行不同的任務(wù)。
在多核或多CPU,或支持Hyper-threading的CPU上使用多線程程序設(shè)計(jì)的好處是顯而易見,即提高了程序的執(zhí)行吞吐率。在單CPU單核的計(jì)算機(jī)上,使用多線程技術(shù),也可以把進(jìn)程中負(fù)責(zé)I/O處理、人機(jī)交互而常被阻塞的部分與密集計(jì)算的部分分開來執(zhí)行,編寫專門的workhorse線程執(zhí)行密集計(jì)算,從而提高了程序的執(zhí)行效率。