Python-消息队列/多线程/共享全局变量/线程非安全等

本文探讨了Python中使用消息队列进行进程间通信的方法,详细解析了多线程的实现,包括线程阻塞、线程数量控制以及两种不同的线程实现方式。同时,文章还讨论了共享全局变量和线程安全问题,揭示了在并发环境下潜在的挑战。
摘要由CSDN通过智能技术生成

消息队列:
在这里插入图片描述
多线程
在这里插入图片描述
1,进程间通信:

# 1.Queue的使用
# 步骤1:导入模块
from multiprocessing import Queue

#步骤2:创建一个队列
q = Queue(3)#可接一个整数,表示队列的容量,如果省略则表示不设上限。
print(q.empty())#True

#步骤3:往队列添加消息
# 格式:put(obj, block=True, timeout=None)
#obj:消息对象
q.put('消息1')
print(q.empty())#False
print('~~~~~~~~~~q.qsize:',q.qsize())#1
q.put('消息2')
print(q.full())#False
q.put('消息3')

#判断队列状态的方法
q.full()#判断队列是否满足,返回一个布尔值,表示当前队列是否满了。
print(q.full())#True

q.empty()#判断队列是否为空,返回一个布尔值,表示当前队列是否为空

q.qsize()#返回一个数值,表示当前队列的消息数量

#步骤4:从队列中取消息
value = q.get()
print(value)#消息1
value = q.get()
print(value)#消息2
value = q.get()
print(v
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值