生产者与消费者模型,其实是把一个需要进程通信的问题 分开考虑
生产者,只需要王队列里存任务
消费者,只需要从队列里取任务
多线程版生产者与消费者模式
# -*- coding: utf-8 -*- """ 生产者与消费者模型 """ from threading import Thread from queue import Queue from random import randint q = Queue(4) # 生产者 class Producer(Thread): def __init__(self, q): super().__init__() self.queue = q def run(self): while True: item = randint(0, 100) self.queue.put(item) print("生产了", item) # 消费者 class Consumer(Thread): def __init__(self, q): super().__init__() self.queue = q def run(self): while True: item = self.queue.get() print("消费了", item) if __name__ == "__main__": producer = Producer(q) consumer = Consumer(q) producer.start() consumer.start()
原文:https://www.cnblogs.com/tangpg/p/10637537.html