如果大家正在学习
python线程中的阻塞内容,那么你必须阅读这篇文章。对于blocking,我们在学习的时候,要么被一笔带过,要么不细化,很少能完全理解blocking的需求。怎么看懂,小伙伴们别着急,小编会把所有需要看懂的内容都告诉你,下面仔细阅读~
阻塞与非阻塞方式:
一、
设置阻塞模式
例
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之后,直接写入消息,报异常;
这是两种模式在阻塞中的使用。你可以通过示例了解该模式的基本使用。总的来说,难度不大。
~如果还想了解其他内容,就到python教程中心查看吧~
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在python中转换时间和日期时间模块?12/12
- ♥ 从 Python 列表中删除元素的 3 种方法11/09
- ♥ python存储的是什么文件类型11/21
- ♥ python中的ndarray是什么?08/31
- ♥ pyqt5在python中弹出提示框10/03
- ♥ 如何使用python跨文件调用变量?09/07
内容反馈