生产者消费者模型
生产者消费者模式,即多条消费者线程和多条生产者线程共用同一缓冲区,线程之间协调工作。简单来说,生产者将信息发送至缓冲区,消费者将缓冲区的数据取出并进行处理。
生产者消费者模式的实现
流程图:
生产者线程产生随机数(信息),将其放入队列,而消费者线程将队列中的数据取出,进行处理。
代码
main.py
import producer
import consumer
import threading
import queue
#初始化
q_data=queue.Queue(maxsize=1000)
event=threading.Event()
lock=threading.Lock()
if event.isSet:
event.clear()
for each in range(5):
c=consumer.Consumer(each,q_data,event,lock,5000)