作业_4.23

from multiprocessing import Process, Queue, JoinableQueue
import time
import random


def producer(name,food,q):
    for i in range(5):
        data = '%s生产了%s%s'%(name,food,i)
        # 模拟延迟
        time.sleep(random.randint(1,3))
        print(data)
        # 将数据放入 队列中
        q.put(data)


def consumer(name,q):
    while True:
        food = q.get()  
        time.sleep(random.randint(1,3))
        print('%s吃了%s'%(name,food))
        q.task_done() 


if __name__ == '__main__':
    q = JoinableQueue()
    p1 = Process(target=producer,args=('大厨egon','包子',q))
    c1 = Process(target=consumer,args=('kk',q))
    p1.start()
    # 将消费者设置成守护进程
    c1.daemon = True
    c1.start()
    p1.join()
    q.join()
  

猜你喜欢

转载自www.cnblogs.com/zhenghuiwen/p/12763578.html
今日推荐