#1、管道Pipe:双向通信:
from multiprocessing import Pipe
p1,p2 = Pipe()
p1.send('hello')
print(p2.recv())
p2.send('hi')
print(p1.recv())
# hello
# hi #2、当管道一端关闭,并且管道没有值的时候,接收就会报错:
from multiprocessing import Pipe
p1,p2 = Pipe()
p1.send('hello')
p1.close() #管道一边关闭。
print(p2.recv()) #hello
print(p2.recv()) #EOFError报错。当管道一端关闭,并且管道没有值的时候,接收就会报错。 #3、主进程发送数据给子进程:
from multiprocessing import Pipe
from multiprocessing import Process
def func(son):
print(son.recv()) if __name__ == '__main__':
foo,son = Pipe()
p = Process(target=func,args=(son,))
p.start()
foo.send('hello')
# hello #队列 = 管道+锁,队列的数据是安全的,管道因为没有锁,数据是不安全的。
#进程之间的通信(IPC):队列和管道。

day41-进程-管道的更多相关文章

  1. Linux学习笔记24——进程管道

    一 管道的作用 通常把一个进程的输出通过管道连接到另一个进程的输入. 二 popen和pclose函数 #include <stdio.h> FILE *popen(const char ...

  2. 13-(1-4)进程管道关于popen(-r-w)及pipe的程序使用实例

    #include<unistd.h> #include<stdlib.h> #include<stdio.h> #include<string.h> # ...

  3. python 进程管道

    数据不安全,不常用 import time from multiprocessing import Pipe, Process def producer(prod, cons, name, food) ...

  4. C++ 进程和匿名管道使用学习

    平台 Windows10 + VS2015 学习内容 进程的创建使用(CreateProcess方式) 父子进程间匿名管道通信 相关函数及参数介绍 CreatePipe函数:该的原型为 CreateP ...

  5. 《Linux程序设计》--读书笔记---第十三章进程间通信:管道

    管道:进程可以通过它交换更有用的数据. 我们通常是把一个进程的输出通过管道连接到另一个进程的输入: 对shell命令来说,命令的连接是通过管道字符来完成的: cmd1    |     cmd2 sh ...

  6. Linux学习记录--命名管道通信

    命名管道通信 什么是命名管道 一个主要的限制是,它是匿名管道的应用还没有名字,因此,只有它可以用于进程间通信的方式与亲缘关系.在命名管道(named pipe或FIFO)提出后,该限制得到了克服.FI ...

  7. python进阶------进程线程(三)

    python中的进程 1.multiprocessing模块 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进 ...

  8. python进程和线程(五)

    python的进程 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了非常好用的多进程包m ...

  9. Linux-I/O重定向和管道

    Linux I/O重定向 标准输入(stdin):文件描述符0 标准输入(stdout):文件描述符1 标准错误(stderr):文件描述符2 file descriptors(FD,文件描述符 或 ...

  10. python 标准类库-并行执行之subprocess-子进程管理

    标准类库-并行执行之subprocess-子进程管理 by:授客QQ:1033553122 1.使用subprocess模块 以下函数是调用子进程的推荐方法,所有使用场景它们都能处理.也可用Popen ...

随机推荐

  1. SUCTF 2019-EasySQL

    0x00 知识点: 1:堆叠注入 2:sql_mode : 它定义了 MySQL 应支持的 SQL 语法,以及应该在数据上执行何种确认检查,其中的 PIPES_AS_CONCAT 将 || 视为字符串 ...

  2. Linux误删所有内核,恢复内核的解决办法

    前言 我用df -h命令查看磁盘使用情况的时候发现,系统根目录空间已经比较小了,于是我就使用clean命令对系统内核进行清理,一不小心,就把所有的内核删除了,你很有可能也是我的这种经历,非常的崩溃.好 ...

  3. Window NodeJs安装

    1.下载NodeJs 官网下载地址:http://nodejs.cn/download/ ​ 2.安装 双击,全程next安装. 安装完成,在cmd下面执行查看版本命令,命令如下 C:\Users\A ...

  4. Java固定资产管理系统 源码 jsp ssh

    固定资产管理系统是对高校固定资产的一个信息化管理系统,基本功能包括:对固定资产的购进.接触.销毁,对物品的使用状态.借出状态.库存状态等进行标识,对各类物品进行编号,根据编号进行查询,根据名称进行查询 ...

  5. CentOS 7.3 下部署基于 Node.js的微信小程序商城

    本文档为微信小程序商城NideShop项目的安装部署教程,欢迎star NideShop商城api服务:https://github.com/tumobi/nideshop NideShop微信小程序 ...

  6. .NET微信开发 配置微信公众号基本配置的几种方法

    自己最近搞了公众号,记录一下. 目的就是为了在微信公众号里启用服务器配置. 微信文档 其实微信文档已经写得很清楚了,也很简单.(微信的目的就是它发送一个get请求,希望我们能接受一下,然后给微信回个数 ...

  7. PPT |《Kubernetes的兴起》

    京东云开发者社区技术沙龙--<Cloud Native时代的应用之路与开源创新> Part1-<Kubernetes的兴起> 欢迎点击"链接"了解更多精彩内 ...

  8. css中标签总结

    cursor CSS属性定义鼠标指针悬浮在元素上方显示的鼠标光标cursor:pointer: 小手 cursor:wait:等待....很多种 <span contenteditable=&q ...

  9. python pandas 画图、显示中文、股票K线图

    目录: 1.pandas官方画图链接 2.标记图中数据点 3.画图显示中文 4.画股票K线图 5.matplotlib基本用法 6.format输出 6.format输出例子 eps_range=[0 ...

  10. ubuntu 插网线无法上网解决方案

    前言 不知道最近是什么情况,ubuntu链接网线总是上不去网,但是wifi还能用,一直也就没有捣鼓,不过今天连wifi都不能用了,只能开始修理了. 修复方案 使用ifconfig命令查看以太网的名称 ...