溫馨提示×

python wait能干嘛用

小樊
81
2024-11-19 19:31:52
欄目: 編程語言

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。

0