您当前位置:设计在线网 >> python >> 浏览文章

在Python Library中Event应用代码介绍

分享到:
本文章讲述了在Python Library中Event应用代码介绍.

这个和

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

 

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

等待信号

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

 

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

  1. event2.set()  

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

 

  1. def test2():  
  2. for i in range(5):  
  3. event2.wait()  
  4. print currentThread().name, i  
  5. event2.clear()  
  6. event1.set()  
  7. Thread(target = test1).start()  
  8. Thread(target = test2).start()  
  9. event1.set()   

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

  1. $ ./main.py  
  2. Thread-1 0  
  3. Thread-2 0  
  4. Thread-1 1  
  5. Thread-2 1  
  6. Thread-1 2  
  7. Thread-2 2  
  8. Thread-1 3  
  9. Thread-2 3  
  10. Thread-1 4  
  11. Thread-2 4  

 

总结以上就是对Python Library中的Event具体实际操作方案的介绍。

相关编辑:

Python Library中Condition应用代码讲解

推荐阅读:
有关VC内嵌Python脚本介绍
Python矩阵转置二维数组实际应用讲解
关于Python少打字小技巧分享
上一篇:Python Library中Condition应用代码讲解
下一篇:没有了

相关文章:

推荐文章  
赞助商链接  
热门排行  
主题推广  
中国设计在线网 All Rights Reserved. 互联网违法和不良信息举报
信息产业部备案号:湘ICP备09001063号