在Python中,wait()
方法通常用于线程同步,让一个线程等待另一个线程完成某个操作。你可以使用threading.Event
来改进等待机制。threading.Event
是一个简单的线程同步原语,它允许一个或多个线程等待某个事件的发生。
下面是一个使用threading.Event
改进等待机制的示例:
import threading import time def worker(event): print("Worker thread started") time.sleep(2) # 模拟耗时操作 print("Worker thread finished") event.set() # 设置事件,表示任务完成 def main(): event = threading.Event() thread = threading.Thread(target=worker, args=(event,)) thread.start() print("Main thread waiting for worker thread to finish") event.wait() # 等待事件被设置 print("Main thread continues") if __name__ == "__main__": main()
在这个示例中,我们使用threading.Event
来替代wait()
方法。worker
函数在完成耗时操作后设置事件,而主线程则等待事件被设置。这样可以更明确地表示等待关系,并提高代码的可读性。