阻塞与非阻塞方式:
一、设置阻塞模式
例1:消息入队
#消息队列数量为2
msgq = Queue(maxsize=2)
#放入两条消息
msgq.put('1')
msgq.put('2')
#判断full
print(msgq.full())
#插入一条,一直阻塞
msgq.put('3')
print("end")结果:一直阻塞,直到队列有空位置;
例2: 消息出队
msgq = Queue(maxsize=2)
print(msgq.empty())
msgq.get()
print('over')结果:一直阻塞,直到有消息;
二、设置非阻塞模式
#消息队列数量为2
msgq = Queue(maxsize=2)
#放入两条消息
msgq.put('1')
msgq.put('2')
#判断full
print(msgq.full())
msgq.put('3', block=False)
print("ove")结果:消息队列full之后,直接写入消息,报异常;