两个进程之间的通讯——pipe 管道
在实际工作中,已经编辑好了NIPT_analysis的软件,该软件一般的输入文件是sam文件,但是为了集成进入测序仪器,需要直接从比对软件的标准输出中读取sam文件,省去了比对软件和NIPT_analysis的I/O时间。
问题来了,如何将这两个exe软件连接起来?原来两个exe程序就是两个进程,现在的问题就是如何实现这两个进程的通讯?
经查,进程之间的通讯有 共享内存、管道等方法。。。。。。。
找到一个较好的解决方案:通过管道pipe的方法。
为了直观,拿一个简单的例子:
有两个程序,一个是write.py,一个reads.py
write.py:
a = 0
while a < 5:
    a += 1
    print("####processing###")
    b = 0
    while b < 10:
        print(b)
        b += 1
    print("####processdone####")
reads.py
import sys 
import time
var = sys.stdin.readline()[0:-1]
while var:
    var = sys.stdin.readline()[0:-1]
    print(var)
在cmd用管道运行结果如下:

两个进程之间的通讯——pipe 管道的更多相关文章
- 用WM_COPYDATA消息来实现两个进程之间传递数据
		文着重讲述了如果用WM_COPYDATA消息来实现两个进程之间传递数据. 进程之间通讯的几种方法:在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯.常用的方法有 1.使用内存映射 ... 
- python 进程之间的通讯
		python 进程之间的通讯 #!/usr/bin/env python #-*- coding:utf-8 -*- # author:leo # datetime:2019/5/28 10:15 # ... 
- 进程之间的通讯Queue简单应用
		#进程间通讯--Queue #Process有时需要通信的,操作系统提供了很多机制来实现进程之间的通讯 #而Queue就是其中一个 #1.Queue的使用 #可以使用multiprocessing模块 ... 
- 8.7 进程间的通讯:管道、消息队列、共享内存、信号量、信号、Socket
		进程间的通讯 进程间为什么需要通讯? 共享数据.数据传输.消息通知.进程控制 进程间的通讯有哪些类型? 首先,联系前面讲过的知识,进程之间的用户地址空间是相互独立的,不能进行互相访问,但是,内核空间却 ... 
- (WCF) 利用WCF实现两个Process之间的通讯。
		目的: 实现两个独立的Process 之间的通讯. 实现思路: 建立一个WCF Service,然后将其Host到一个Console 程序中,然后在另外一个Console程序中引用WCF的Servic ... 
- 如何实现两个Activity 之间如何通讯
		<转> 今天主要学习了Activity 组件,在这里作一下总结 1,学习如何创建Activity 创建 Activity 要点: (1) 一个Activity就是一个类,并且这个类要继承A ... 
- 结合process进程,实现进程之间的通讯Queue,稍微复杂的运用
		#在父进程中创建两个子进程,一个往Queue写数据,一个从Queue里读数据 from multiprocessing import Queue,Process import time,random ... 
- C# 两个进程之间通讯(管道通信 )
		#region 客户端 NamedPipeClientStream pipeClient = new NamedPipeClientStream("localh ... 
- 结合Pool进程池进程,实现进程之间的通讯,稍微复杂的运用
		#进程池中的Queue """ 如果要用Pool创建进程,就需要multiprocessing.Manager()中的Queue() 而不是multiprocessing ... 
随机推荐
- Spring_总结_01_Spring概述
			一.前言 从今天开始,重新总结一下Spring的相关知识,主要是结合<Spring实战(第四版)>和 <JavaEE开发的颠覆者——SpringBoot实战>这两本书以及官方文 ... 
- 前端项目使用module.exports文件一定要Webpack编译吗?请问gulp可以编译这种文件吗
			import引入类似这种文件,一定要用webpack去编译吗 module.pxports 是CMD规范的一个全局函数,功能是当前模块对外提供接口.require可以直接使用这个接口.例子: echo ... 
- JavaScript6 新语法 let 有什么优势
			最近看国外的前端代码时,发现ES6的新特性已经相当普及,尤其是 let,应用非常普遍 虽然 let 的用法与 var 相同,但不管是语法语义上,还是性能上,都提升了很多,下面就从这两方面对比一下 语法 ... 
- axios 请求报错
			报错如下: 解决:axios的请求配置中的baseURL配置错误,修改好即可. 报错前: baseURL: "192.168.30.220:3000", 解决后:baseURL: ... 
- Nginx配置负载均衡服务器
			最近想买一台二手电脑当Linux服务器,一直没有买,暂时用windows来搞. Nginx下载地址:http://nginx.org/download/nginx-1.2.6.zip Tomcat下载 ... 
- centos安装yum源
			网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常的不错,将yum源设置为163yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到.具体设置方法如下 ... 
- CSS动画复习
			一.css动画相关的几个属性 属性 含义 理解 transform 一种CSS属性.用于修改CSS视觉格式模型的坐标空间.使用它,元素可以被移动(translate).旋转(rotate).缩放(sc ... 
- StringBuilder、StringBuffer、String区别
			相信大家对 String 和 StringBuffer 的区别也已经很了解了,但是估计还是会有很多同志对这两个类的工作原理有些不清楚的地方,今天重新把这个概念给大家复习一下,顺便牵出 J2 ... 
- Java-API-POI-Excel:SXSSFWorkbook Documentation
			ylbtech-Java-API-POI-Excel:SXSSFWorkbook Documentation 1.返回顶部 1. org.apache.poi.xssf.streaming Class ... 
- Task Crontab
			Crontab 1.查看任务 crontab -l 2.编辑任务 1)对应用户登录后编辑其下的作业 crontab -e 2)删除指定用户任务 crontab -u user -r 3)删除用户下指定 ... 
