Python之queue模块
queue是第一个队列模块,元素先进先出,取了就没有了
这里用queue模块实现简单的消费生产者模型
queue就是队列,是线程安全的,只能一边拿一边加元素进去
import queue import threading message = queue.Queue(10) def produce(i):#生产者 #while True: msg = message.put(i)#元素放进队列 print('put:',i) def consumer(i):#消费者 #while True: msg = message.get()#等待拿走元素,如果一直没有,线程不会结束,而且队列内一个元素被拿走了就在队列里面去除了 print(msg) for i in range(10): t = threading.Thread(target=produce,args=(i,)) t.start() print(message.qsize()) for i in range(15):#每个人去队列里面取值 t = threading.Thread(target=consumer,args=(i,)) t.start() print(message.qsize())