Python等待所有執行緒任務完成

2021-09-12 15:58:36 字數 850 閱讀 3459

import threading

import time

import random

def takesleep(id, name):

print(name+'-'+id+':執行緒開始執行...')

time.sleep(random.randint(0, 3))

print(name+'-'+id+':執行緒任務結束')

print('主程式開始執行...')

threads =

for i in range(0, 5):

t = threading.thread(target=takesleep, args=(str(i), 'zhangphil'))

t.start()

print('主程式執行中...')

#等待所有執行緒任務結束。

for t in threads:

t.join()

print("所有執行緒任務完成")

執行輸出:

主程式開始執行...

zhangphil-0:執行緒開始執行...

zhangphil-1:執行緒開始執行...

zhangphil-0:執行緒任務結束zhangphil-2:執行緒開始執行...

zhangphil-3:執行緒開始執行...

zhangphil-1:執行緒任務結束

zhangphil-4:執行緒開始執行...主程式執行中...

zhangphil-4:執行緒任務結束

zhangphil-2:執行緒任務結束

zhangphil-3:執行緒任務結束

所有執行緒任務完成

執行緒同步 等待所有執行緒執行完畢

在多執行緒程式中經常會碰到執行緒同步 場景1主線程啟動多個子執行緒後,主線程需要等待所有的子執行緒執行完畢後,主線程才能進一步向下執行。c 提供了 manualresetevent 類為我們的執行緒同步提供了方便.manualresetevent.waitall new waithandle wai...

多執行緒 等待所有任務執行完成

在多執行緒中,有時候需要等待所有執行緒執行完成後才讓繼續往下執行,如查詢結果彙總等。下面列舉兩種等待方式 方式一 利用 countdownlatch 類完成。示例 按任務總量建立計數器 final countdownlatch countdownlatch new countdownlatch so...

易語言 多執行緒,等待所有執行緒執行完畢後操作

用處 當你請求網路,想吧網路請求的結果放到乙個全域性陣列中,然後最後一塊處理陣列 執行緒呼叫案列 版本 2 支援庫 ethread 支援庫 spec 程式集 視窗程式集1 子程式 按鈕1 被單擊 區域性變數 handle,整數型 啟動執行緒 thread,handle 關閉執行緒控制代碼 handl...