PythonLibrary中Event的具体操作方案

这篇文章主要讲解了“Python Library中Event的具体操作方案”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python Library中Event的具体操作方案”吧!

成都创新互联公司是一家业务范围包括IDC托管业务,网站空间、主机租用、主机托管,四川、重庆、广东电信服务器租用,德阳机房服务器托管,成都网通服务器托管,成都服务器租用,业务范围遍及中国大陆、港澳台以及欧美等多个国家及地区的互联网数据服务公司。

这个和 .NET ManualResetEvent 相对应,用于在多个线程间进行协同操作。Event.wait() 等待事件信号以便继续执行,set() 设置信号使等待的线程得以执行,clear() 清除信号。

event1 = Event()  event2 = Event()  def test1():  for i in range(5):  event1.wait()

等待信号

print currentThread().name, i  event1.clear()

执行完成后,清除标记(flag),使得下次 wait() 时需再次等待通知。

event2.set()

设置另外一个等待事件,以便给另外一个线程发送信号。

def test2():  for i in range(5):  event2.wait()  print currentThread().name, i  event2.clear()  event1.set()  Thread(target = test1).start()  Thread(target = test2).start()  event1.set()

记得先激活一个,否则都在那 "等死" 呢。输出:

$ ./main.py  Thread-1 0  Thread-2 0  Thread-1 1  Thread-2 1  Thread-1 2  Thread-2 2  Thread-1 3  Thread-2 3  Thread-1 4  Thread-2 4

感谢各位的阅读,以上就是“Python Library中Event的具体操作方案”的内容了,经过本文的学习后,相信大家对Python Library中Event的具体操作方案这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


新闻标题:PythonLibrary中Event的具体操作方案
当前网址:http://pwwzsj.com/article/gogjcp.html