Python 執行緒的五種狀態

2021-10-06 01:51:36 字數 1112 閱讀 5145

執行緒被掛起。例如呼叫sleep(),執行緒被掛起,睡眠時間結束後,程式到了就緒狀態。或者join()阻塞執行緒,待子執行緒返回時,主線程再繼續執行

def

printthreadname()

:for i in

range(5

):print

("當前執行的執行緒:,執行到第次"

.format

(threadname=threading.currentthread(

).getname(

), n=i)

)mythread=threading.thread(target=printthreadname)

# 主線程和子執行緒會輪流獲得 cpu 資源

mythread.start(

)print

("主線程:"

+ threading.current_thread(

).getname())

"""執行的結果:

當前執行的執行緒:thread-1,執行到第0次

當前執行的執行緒:thread-1,執行到第1次

當前執行的執行緒:thread-1,執行到第2次

當前執行的執行緒:thread-1,執行到第3次

mainthread

當前執行的執行緒:thread-1,執行到第4次

"""#阻塞主線程

childrenthread=threading.thread(target=printthreadname)

childrenthread.start(

)childrenthread.join(

)print

("主線程:"

+ threading.current_thread(

).getname())

"""執行的結果:

當前執行的執行緒:thread-1,執行到第0次

當前執行的執行緒:thread-1,執行到第1次

當前執行的執行緒:thread-1,執行到第2次

當前執行的執行緒:thread-1,執行到第3次

當前執行的執行緒:thread-1,執行到第4次

mainthread

"""

執行緒的五種狀態

1.建立狀態,執行緒剛剛建立還未呼叫start方法。2.就緒狀態,呼叫start方法,還未搶到cpu執行權。3.執行狀態,搶到cpu執行權,執行run方法。4.阻塞狀態,包含sleep和wait 1 sleep使先執行緒處於睡眠狀態,期間讓出cpu使用權,不釋放資源。2 wait是執行緒處於等待狀態...

執行緒的五種狀態

1 新建狀態 new 當執行緒物件對建立後,即進入了新建狀態,如 thread t new mythread 2 就緒狀態 runnable 當呼叫執行緒物件的start 方法 t.start 執行緒即進入就緒狀態。處於就緒狀態的執行緒,只是說明此執行緒已經做好了準備,隨時等待cpu排程執行,並不是...

Java執行緒的五種狀態

new 乙個執行緒被建立但是沒有呼叫start方法 runnable 可執行的執行緒,即執行緒執行了start方法之後,正在執行或者正在等待某個資源 blocked 執行緒等待鎖來進入同步方法或 塊。waiting 乙個執行緒正在等待另乙個執行緒來喚醒,可能是由於呼叫了以下方法 timed wait...