同学,你好!
可以参考以下代码,思考队列在在多线程中的使用:
import threading,time
import queue
#创建队列最大长度为10
q = queue.Queue(maxsize=50)
#创建生产者
def Producer(name):
count = 1
while True:
#把生产的骨头放入队列
q.put('骨头%s' % count)
print('%s生产了骨头'%name, count)
count += 1
time.sleep(1)
#创建消耗者
def Consumer(name):
while True:
#取出骨头吃掉
print('[%s] 取到[%s] 并且吃了它...'%(name,q.get()))
time.sleep(1)
#创建线程
p = threading.Thread(target=Producer,args=('慕慕',))
c = threading.Thread(target=Consumer,args=('大黄',))
c1 = threading.Thread(target=Consumer,args=('大黑',))
#开启线程
c.start()
c1.start()
p.start()
祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星