Python多线程的简单实现(生产者消费者模型)

六眼飞鱼酱① 提交于 2020-03-27 03:09:15
 1 __author__ = "JentZhang"
 2 
 3 import time, threading, queue
 4 
 5 q = queue.Queue(maxsize=10)  # 声明队列
 6 
 7 
 8 def Producer(name):
 9     '''生产者'''
10     count = 1
11     while True:
12         q.put(count)  # 往队列中添加数据
13         print("[%s] 生产了第%s包子\n" % (name, count))
14         count += 1
15         time.sleep(3)
16 
17 
18 def Consumer(name):
19     '''消费者'''
20     while True:
21         i = q.get()  # 从队列中取数据
22         print("====[%s] 吃了第%s个包子\n" % (name, i))
23         time.sleep(1)
24 
25 
26 '''设置多线程'''
27 p = threading.Thread(target=Producer, args=("Jent",))
28 c1 = threading.Thread(target=Consumer, args=("张三",))
29 c2 = threading.Thread(target=Consumer, args=("李四",))
30 
31 '''线程开启'''
32 p.start()
33 c1.start()
34 c2.start()

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!