python 线程 event
Posted 扫驴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 线程 event相关的知识,希望对你有一定的参考价值。
全局定义了一个“Flag”,如果“Flag”值为 False,那么当程序执行 event.wait 方法时就会阻塞,如果“Flag”值为True,那么执行event.wait 方法时便不再阻塞。
clear:将“Flag”设置为False
set:将“Flag”设置为True
用 threading.Event 实现线程间通信,使用threading.Event可以使一个线程等待其他线程的通知,我们把这个Event传递到线程对象中,
Event默认内置了一个标志,初始值为False。一旦该线程通过wait()方法进入等待状态,直到另一个线程调用该Event的set()方法将内置标志设置为True时,该Event会通知所有等待状态的线程恢复运行。
import threading,time event = threading.Event() def aa(): print (‘begin‘) event.wait() print (‘end‘) f=threading.Thread(target=aa) event.clear()#虽然event初始默认值就是false,但习惯上 #还是设置一下 f.start() time.sleep(10)#这期间线程被阻塞 event.set()
以上是关于python 线程 event的主要内容,如果未能解决你的问题,请参考以下文章
python lock, semaphore, event实现线程同步