wait()
是一個 Python 內(nèi)置函數(shù),通常用于線程同步。它可以讓一個線程等待另一個線程完成某個操作后再繼續(xù)執(zhí)行。wait()
函數(shù)通常與 Event
類一起使用,Event
類提供了一個簡單的機制來實現(xiàn)線程間的通信和同步。
wait()
函數(shù)的基本用法如下:
import threading
# 創(chuàng)建一個 Event 對象
event = threading.Event()
def worker():
print("Worker thread started")
# 等待 Event 對象被設置為 True
event.wait()
print("Worker thread finished")
# 創(chuàng)建一個線程并啟動它
t = threading.Thread(target=worker)
t.start()
# 在主線程中設置 Event 對象為 True
event.set()
# 等待線程完成
t.join()
在這個例子中,worker
函數(shù)會等待 Event
對象被設置為 True
。當主線程調(diào)用 event.set()
時,worker
函數(shù)會繼續(xù)執(zhí)行并打印 “Worker thread finished”。
wait()
函數(shù)還可以接受可選的參數(shù),例如超時時間:
# 讓線程等待 1 秒后繼續(xù)執(zhí)行
event.wait(1)
如果在這個時間內(nèi) Event
對象沒有被設置為 True
,線程會繼續(xù)執(zhí)行并返回 False
。