我正在编写一个多线程Python应用程序,其中每个线程应该在以下情况下唤醒:
- 来自主线程的信号
- 自行启动的 Timer 调用
换句话说,线程应该根据它们为自己设置的计时器唤醒,并且能够在相关事件出现时响应来自管理线程的信号。
实现双重(定时器/事件)唤醒机制的惯用方法是什么?
Well, 线程.事件 https://docs.python.org/2/library/threading.html#threading.Event, has a wait https://docs.python.org/2/library/threading.html#threading.Event.wait方法,需要超时。所以你可以做一些简单的事情
在主线程中:
sleepEvent = threading.Event()
将其传递给其他线程,并在其中:
sleepEvent.wait(10) # wait for up to 10 seconds
现在,您的线程将等待 10 秒(如计时器),或者在主线程调用时清除等待
sleepEvent.set()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)