python3,进程间的通信

本文介绍了Python3.5的multiprocessing模块,重点讲解了进程间通信的两种方式:进程队列queue和管道pipe。进程队列类似于queue.Queue,支持跨进程传递消息;管道pipe则通过两个连接对象进行数据传输,但并发读写可能导致数据损坏。
摘要由CSDN通过智能技术生成

本文来源于python 3.5版本的官方文档

multiprocessing模块为进程间通信提供了两种方法:

1.进程队列queue

The Queue class is a near clone of queue.Queue。
Queues are thread and process safe。

使用进程队列,可以在两个进程间传递消息。其用法跟queue.Queue类似。

使用方法:

from multiprocessing import Process,Queue
def func(q):
    q.put([42,None,"hello"])    #把一个列表放入一个队列中

if __name__=="__main__":
    q1=Queue()        #定义一个队列
    p1=Process(target=func,args=(q1,))      #实例化一个进程
    p1.start()  #启动进程 
    print(q1.get())     #从队列中取出一个项目,并打印 
    p1.join()   #阻塞进程

返回值:

[42, None, 'hell
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值