multiprocessing消费,生产实现
"""
多进程.
Manager.Queue() 创建对列对象.
"""
from multiprocessing import Process
from multiprocessing import Manager
import random
import time
class Producer(Process):
def __init__(self, queue):
super().__init__()
self.queue = queue
def run(self):
while True:
item = random.randint(0, 99)
self.queue.put(item)
print("Producer-->%s" % item)
time.sleep(1)
class Consumer(Process):
def __init__(self, queue):
super().__init__()
self.queue = queue
def run(self):
while True:
item = self.queue.get()
print("Consumer-->%s" % item)
self.queue.task_done()
if __name__ == '__main__':
qMar = Manager()
q1 = qMar.Queue()
p = Producer(q1)
c = Consumer(q1)
p.start()
c.start()
p.join()
c.join()