python中multiprocessing模块之Pipe管道
来源:互联网 发布:网络棋牌游戏能作弊吗 编辑:程序博客网 时间:2024/06/05 16:40
multiprocessing.Pipe([duplex])
返回2个连接对象(conn1, conn2),代表管道的两端,默认是双向通信.如果duplex=False,conn1只能用来接收消息,conn2只能用来发送消息.不同于os.open之处在于os.pipe()返回2个文件描述符(r, w),表示可读的和可写的
实例如下:
#!/usr/bin/python#coding=utf-8import osfrom multiprocessing import Process, Pipedef 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
0 0
- python中multiprocessing模块之Pipe管道
- Python 进程,管道( multiprocessing.Pipe() ),进程通信(双向通信)
- multiprocessing在python中的高级应用-IPC 之 Pipe
- python multiprocessing.Pipe() Queue 示例
- python c++ 交互之管道 pipe
- python中subprocess与pipe管道
- [笔记]python multiprocessing模块
- Python标准模块--multiprocessing
- python multiprocessing模块
- Python-multiprocessing-Process模块
- Python-multiprocessing-Pool模块
- 管道编程之pipe
- 在python中实现生产者和消费者的例子(一):使用multiprocessing和pipe()
- Python笔记:multiprocessing模块详解
- python入门(三十七):multiprocessing模块
- python 多进程模块 multiprocessing
- python并发之multiprocessing
- python之multiprocessing.pool
- android 关于图片压缩
- 动态修改TreeView某些节点TreeNode样式
- Netty In Action(一):Netty介绍
- Mat的使用方法——获取ROI
- STL常用容器浅谈
- python中multiprocessing模块之Pipe管道
- 后台创建窗体下拉列表
- Longest Common Prefix
- C# Dictionary(字典)的键、值排序
- python命令行代码的自动补全
- sqlite入门基础(一):sqlite3_open,sqlite3_exec,slite3_close
- 解决Redhat默认无法使用sbin目录下命令的问题
- ibm-jdk1.7 tar
- Spring的MultiActionController