threading的消费,生产实现
"""
多线程.
"""
from threading import Thread
import queue
import random
import time
class Producer(Thread):
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(Thread):
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__':
q1 = queue.Queue()
p = Producer(q1)
c = Consumer(q1)
p.start()
c.start()
p.join()
c.join()