这篇文章主要介绍了python基于event实现线程间通信控制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
import threading,time class Boss(threading.Thread): def run( self ): print ( "We must work today!" ) event.isSet() or event. set () time.sleep( 5 ) print ( "You can go home right now!" ) event.isSet() or event. set () class Worker(threading.Thread): def run( self ): event.wait() print ( "Oh,my god!!!" ) time.sleep( 1 ) event.clear() event.wait() print ( "Oh,yeah!!!" ) if __name__ = = "__main__" : event = threading.Event() threads = [] for i in range ( 5 ): threads.append(Worker()) threads.append(Boss()) for t in threads: t.start() for t in threads: t.join() |
运行后显示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
We must work today! Oh,my god!!! Oh,my god!!! Oh,my god!!! Oh,my god!!! Oh,my god!!! You can go home right now! Oh,yeah!!! Oh,yeah!!! Oh,yeah!!! Oh,yeah!!! Oh,yeah!!! Process finished with exit code 0 |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/iceberg710815/p/12043746.html