这篇文章主要介绍“Python生产者与消费者模型中的优势有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python生产者与消费者模型中的优势有哪些”文章能帮助大家解决问题。
生产者消费者模型具体来讲,就是在一个系统中,存在生产者和消费者两种角色,他们通过内存缓冲区进行通信,生产者生产消费者需要的资料,消费者把资料做成产品,从而消耗掉生产的数据。达到供需平衡,不能生产多了浪费,也不能需要消耗资源的时候没有。
multiprocessing-Queue实现
from multiprocessing import Process,Queue #多进程组件,队列
import time,random
#生产者方法
def producer(name,food,q):
for i in range(4):
time.sleep(random.randint(1,3)) #模拟获取数据时间
f = '%s生产的%s%s'%(name,food,i)
print(f)
q.put(f) #添加进队列
#消费者方法
def consumer(q,name):
while True:
food = q.get() #如果获取不到,会一直阻塞进程不会结束子进程
# 当队列中的数据是None的时候结束while循环
if food is None:
print('%s获取到一个空'%name)
break
f = '