Python基础-26-进程中通信Queue

Queue的使用

multiprocessing模块的Queue实现多进程之间的数据传递,Queue本身是一个消息列队程序

(1)实例化一个Queue对象:queue = multiprocessing.Queue(10)

10为最大可接受的消息数量,若括号中没有指定,或数量为负数,代表可接受的数量没有上线(直到内存尽头)

(2)Queue创建的实例对象常用方法

queue.qsize():返回当前队列包含的消息数量

queue.empty():如果队列为空,返回True,反之False

queue.full():如果队列满了,返回True,反之False

 

queue.put(item,[block[,timeout]]:将item消息写入队列,block默认值为True

1)bolck使用默认值(True)

①没有设置timeout(单位秒),消息队列如果已经没有空间可写入,此时程序将被阻塞(停在写入状态),直到从消息队列腾出空间为止

②设置了timeout,则会等待timeout秒,若还没空间,则抛出“queue.full”异常

2)block值为False,消息队列如果没有空间可写入,则会立刻抛出“queue.Full”异常

queue.put_nowait(item):相当于queue.put(item,False)

 

queue.get([nlock[,timeout]]):获取队列中的一条消息,然后将其从队列中移除,block默认为True

1)bolck使用默认值(True)

①没有设置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值