日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python multiprocessing模塊中的Pipe管道使用實例

系統 1818 0

multiprocessing.Pipe([duplex])
返回2個連接對象(conn1, conn2),代表管道的兩端,默認是雙向通信.如果duplex=False,conn1只能用來接收消息,conn2只能用來發送消息.不同于os.open之處在于os.pipe()返回2個文件描述符(r, w),表示可讀的和可寫的

實例如下:

復制代碼 代碼如下:

#!/usr/bin/python
#coding=utf-8
import os
from multiprocessing import Process, Pipe

def send(pipe):
??? pipe.send(['spam'] + [42, 'egg'])
??? pipe.close()

def talk(pipe):
??? pipe.send(dict(name = 'Bob', spam = 42))
??? reply = pipe.recv()
??? print('talker got:', reply)

if __name__ == '__main__':
??? (con1, con2) = Pipe()
??? sender = Process(target = send, name = 'send', args = (con1, ))
??? sender.start()
??? print "con2 got: %s" % con2.recv()#從send收到消息
??? con2.close()

??? (parentEnd, childEnd) = Pipe()
??? child = Process(target = talk, name = 'talk', args = (childEnd,))
??? child.start()
??? print('parent got:', parentEnd.recv())
??? parentEnd.send({x * 2 for x in 'spam'})
??? child.join()
??? print('parent exit')

輸出如下:

復制代碼 代碼如下:

con2 got: ['spam', 42, 'egg']
('parent got:', {'name': 'Bob', 'spam': 42})
('talker got:', set(['ss', 'aa', 'pp', 'mm']))
parent exit


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 蒲江县| 攀枝花市| 富平县| 包头市| 灵寿县| 讷河市| 鄢陵县| 丰宁| 海林市| 池州市| 马鞍山市| 张家川| 胶南市| 陈巴尔虎旗| 屏边| 日照市| 清河县| 株洲市| 柳河县| 玉林市| 杭锦旗| 运城市| 巴中市| 敖汉旗| 东乡| 正宁县| 呼伦贝尔市| 南城县| 琼海市| 阿克陶县| 潍坊市| 常州市| 密山市| 江山市| 延吉市| 吐鲁番市| 彰化县| 东山县| 乐清市| 文昌市| 玉田县|