码迷,mamicode.com
首页 > 编程语言 > 详细

python多线程--管道交互

时间:2018-07-11 10:40:17      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:art   main   target   python   pipe   交互   roc   ssi   pytho   

1.管道使用

‘‘‘
管道Pipe
‘‘‘
from multiprocessing import Process,Pipe

def f(conn):
    conn.send(‘child message‘)
    conn.close()
if __name__==‘__main__‘:
    parent_conn,child_conn=Pipe()
    p=Process(target=f,args=(child_conn,))
    p.start()
    print(parent_conn.recv())
    p.join()

2.Manage

from multiprocessing import Process,Manager
import os

def f(d,l):
    d[1]=‘1‘
    d[‘2‘]=2

    l.append(os.getpid())

if __name__=="__main__":
    manage_data=Manager()
    d=manage_data.dict()
    l=manage_data.list()

    p_list=[]
    for i in range(10):
        p = Process(target=f, args=(d, l))
        p.start()
        p_list.append(p)

    for res in p_list:
        res.join()

    print(d)
    print(l)

>>:
{1: ‘1‘, ‘2‘: 2}
[2472, 7972, 9760, 5328, 5488, 12316, 6780, 12592, 6676, 6408]      

python多线程--管道交互

标签:art   main   target   python   pipe   交互   roc   ssi   pytho   

原文地址:http://blog.51cto.com/13803166/2140182

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!