首页 > 其他 > 详细

4/23

时间:2020-04-23 20:57:58      阅读:61      评论:0      收藏:0      [点我收藏+]

4/23

生产者消费者模型

from multiprocessing import Process, Queue, JoinableQueue
import time
import random
?
?
def producter(food, q):
   for i in range(3):
       data = f‘{food}店生产了第{i}个{food}‘
       time.sleep(random.randint(1, 2))
       print(data)
       q.put(data)
?
?
def customer(name, q):
   while 1:
       food = q.get()
       time.sleep(random.randint(1, 2))
       print(f‘{name}吃了{food}‘)
       q.task_done()
?
?
if __name__ == ‘__main__‘:
   q = JoinableQueue()
   p1 = Process(target=producter, args=(‘炸鸡‘, q,))
   p2 = Process(target=producter, args=(‘汉堡‘, q,))
   c1 = Process(target=customer, args=(‘egon‘, q,))
   c2 = Process(target=customer, args=(‘tank‘, q,))
   p1.start()
   p2.start()
   c1.daemon = True
   c2.daemon = True
   c1.start()
   c2.start()
   p1.join()
   p2.join()
   q.join()

4/23

原文:https://www.cnblogs.com/bailongcaptain/p/12763437.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!