腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
bash共
进程
是如何实现流水线化的?
、
、
请注意这篇来自曼巴什的文章(重点是我的文章): 协同
进程
是一个shell命令,前面是coproc保留字。协
进程
在子shell中异步执行,就像命令已经用& control操作符终止一样,with是在执行的shell和协同
进程
之间建立的
双向
管道
。现在,我们知道,与其他*nix系统不同的是,
Linux
管道
是单向的。(也是参考人管(7),可移植部分)。那么,bash代码如何在
Linux
上没有
双向
管道
的情况下实现呢?
浏览 0
提问于2019-01-10
得票数 1
回答已采纳
1
回答
将使用
双向
popen()的C++代码移植到POSIX的最佳方法
、
、
我试图在
Linux
上运行一些C++代码,这是一位同事为OS编写的代码。它大多是可移植的,但有一部分我不知道如何处理。他使用popen(CMD, "r+")打开
双向
管道
,并通过fget和fprint与
进程
通信。 在
Linux
上,r+类型不可用,因为
管道
只能是单向的。我猜想通常的方式是通过套接字来处理
双向
通信,但是被称为CMD是一个交互程序,我们只有有限的
控制
。无论如何,我的问题是:将
双向
popen()移植到POSIX
浏览 1
提问于2016-05-11
得票数 1
回答已采纳
1
回答
xterm的-S选项(传递伪终端名称和描述符)在
Linux
中是如何工作的?
、
、
、
s是一个与00、01和%d类似的双字符数字序列XX,其中%d是一个数字文件描述符.这显然是一种告诉xterm使用/dev/ttypXX (伪终端从站)的方法,但代码似乎不需要打开相应的主程序,而是调用
管道
浏览 1
提问于2009-07-22
得票数 2
回答已采纳
2
回答
独立程序的多对一
双向
通信
、
、
我正在尝试在
Linux
的程序之间进行
双向
、多对一的通信。 我的计划如下:一个名为"driver“的程序与硬件进行通信,它需要与
Linux
中数量未知的应用程序进行通信。我读到过一种最常见的
进程
间通信方式是“命名
管道
”。 我还没有发现的问题是:新程序应该如何通知驱动程序新程序正在运行,以便在新程序和驱动程序之间建立另一个连接(命名
管道
)?
浏览 11
提问于2019-06-13
得票数 2
回答已采纳
1
回答
在接受套接字之前创建的子
进程
中使用父
进程
接受的套接字
、
、
、
、
我正在使用“预分叉模型”和C语言编写一个跨平台、多
进程
和多线程的服务器。根据模式(多
进程
或多线程),服务器刚刚启动,创建一组
进程
/线程,其任务是处理主服务器接受的客户端请求。因为子
进程
是在接受套接字之前创建的,所以它们显然不会继承接受的套接字。在win32中,我解决了这个问题,复制了套接字。我能在C
linux
中做什么?
浏览 29
提问于2019-01-23
得票数 1
回答已采纳
1
回答
进程
间通信的最佳方法是什么?
、
、
、
我有一个
进程
在同一台机器上运行。这是用c编程写的。我想在我的.net应用程序和
进程
之间进行
双向
通信。那么哪种机制更适合呢?我将在
linux
环境中托管我的.net应用程序,
进程
也在
linux
环境中运行。我已经通过了命名
管道
,消息队列等。那么根据我的需求,哪一个将是好的解决方案?有人能在这方面帮助我吗?任何帮助都将不胜感激。谢谢。
浏览 1
提问于2017-12-18
得票数 0
2
回答
POSIX: FreeBSD与
Linux
中的
管道
系统调用
、
、
、
在
Linux
(2.6.35-22泛型)中,man pipe声明 一个是单向的,另一个是
双向
的。
浏览 10
提问于2011-03-22
得票数 7
回答已采纳
6
回答
popen()能制造像
管道
()+叉()这样的
双向
管道
吗?
、
、
、
、
这可能是不可能的,因为(我认为)我需要能够从
管道
的父
进程
写入,在子
进程
结束时读取,从子
进程
写入输出,最后从父
进程
读取输出。我的系统上的popen()手册页说
双向
管道
是可能的,但是我的代码需要运行在一个只支持单向
管道
的旧版本的系统上。 打开
管道</
浏览 15
提问于2010-10-07
得票数 24
回答已采纳
1
回答
将标准输入传递给命令,而不会干扰用户标准输入
我在简明扼要地描述我想要完成的事情时遇到了一些麻烦,但我试图做的是编写一个程序,它将以插件的形式执行其他程序/脚本,并在执行过程中,促进我的程序和其他程序/脚本之间的通信,以满足各种请求(例如,请求用户列表)。但是,如果这些其他程序/脚本需要与最终用户通信,我也不希望妨碍他们。我探索了一些其他的方法(如dbus、http api、不同的文件句柄等),所有这些选项对于我正在尝试做的事情来说要么是太重的解决方案,要么是我在实现上没有太大的成功(就像最后一个想法一样),仅仅使用普通的STDIN/STDOUT似乎是最干净的前进道路。let mut child = Command
浏览 1
提问于2021-10-18
得票数 0
3
回答
在fork()和exec()之后创建
管道
、
、
、
考虑以下几点: 如果子程序收到来自客户端的特定消息,则创建另一个
双向
管道
给他的父节点问题是: 当我在子
管道
中创建一个
管道
(使用pipe())并将文件描述符传递给父
管道
(使用MAINPIPE)时,父文件描述符在尝试从
管道
浏览 5
提问于2012-11-06
得票数 1
回答已采纳
1
回答
Linux
讨厌: /dev/stdin不适用于套接字
、
、
、
Linux
有一个恼人的特点,即/dev/stdin不能使用套接字--返回ENXIO是硬编码的。
linux
内核是为了禁止以这种方式合理地使用/dev/stdin而编写的--参见http://marc.info/?l=ast-users&m=120978595414993。如果只需要单向功能,则可以在单独的
进程
中缓冲数据: socat TCP-OPEN:localhost:1234 SYSTEM:'cat | thingy /dev/st
浏览 0
提问于2013-11-05
得票数 1
回答已采纳
1
回答
孩子的过程永远存在
、
、
、
我正在启动一个子
进程
,它应该在定义的超时期间内结束,大致如下:{ { }} 子
进程
是CPU密集型计算引擎( SAT求解程序)大多数情况下,上述代码可以工作,并且完成了正确的
进程
超时终止。但在大约5%的病例中,process.Kill()没有明显的效果。儿童
进程
仍
浏览 3
提问于2014-07-12
得票数 1
1
回答
将标准输入/输出重定向到单个
双向
文件描述符
、
、
、
、
在某些情况下,例如在处理串行设备文件时,我能够打开
双向
文件描述符。但是,STDIN/STDOUT是两个独立的单向文件。可以从STDIN/STDOUT创建
双向
文件描述符吗?--我要求使用接口对称的目的:当编写同时需要read和write的用户函数时,在处理标准
管道
时需要为两个方向指定文件描述符(仅)是不方便的。关于重定向STDIN/STDOUT (例如使用dup2),有很多讨论可用,但是这个讨论主要是关于
管道
输入到/从子
进程
。我还没有找到将两个文件描述符合并为一个的任
浏览 0
提问于2018-02-28
得票数 1
回答已采纳
3
回答
R中的读写
管道
()通信
、
、
大多数语言都支持
双向
进程
通信。在R中,我似乎只能走一条路,不管我是用"r+“还是"w+”打开
管道
。此外,即使我通过R -f ...或R < ...运行脚本,在实际的
控制
台标准输入/标准输出中也会出现奇怪的行为。要在R中重现上述Python示例中的
双向
进程
通信?
浏览 1
提问于2011-03-19
得票数 11
回答已采纳
2
回答
Unix域套接字辅助数据
、
、
对于
linux
上使用叉()的多
进程
实现程序,套接字对()用于父
进程
和子
进程
之间的通信。为了澄清, 为什么辅助数据传递是必要的,因为我们总是可以使用套接字对()连接的套接字来回传递有效负载?用例场景是什么?我们可以在父
进程
中创建
管道
()或套接字对(),然后用叉创建子
进程
。然后父
浏览 2
提问于2013-03-15
得票数 1
1
回答
在
linux
中共享代码有哪些二进制标准(类似于COM)?
、
、
我在其他地方读到,
LINUX
不认为COM是应该的,因为COM基本上使用操作系统作为获取这些标准化对象的主持人。
Linux
中不应该有类似的东西吗?如果是的话,那是什么呢?
浏览 0
提问于2015-03-21
得票数 1
回答已采纳
2
回答
C是否可以捕获stdin/out来与其他程序交互,就好像它正在使用shell一样?
、
我意识到这可能是一个奇怪的问题,但如果我有一个可以向系统发送命令的程序,比如:该程序可以运行命令,并通过"ls -l“等参数向其他程序发送命令。很抱歉给你解释我的请求带来的困难。这是一个技术问题的练习,原因我不能简单地解释。
浏览 1
提问于2013-01-09
得票数 1
回答已采纳
5
回答
当我们通过调用C++中的
管道
()函数获得两个文件描述符时,
管道
是单向的吗
、
、
我正在阅读
管道
函数的文档,我遇到过这样的情况 pipe() creates a pipe, a unidirectional data channel that can be used for interprocess
浏览 2
提问于2020-08-23
得票数 1
6
回答
从C程序内部执行程序
、
我需要在
Linux
下工作的解决方案。
浏览 3
提问于2008-09-16
得票数 8
回答已采纳
1
回答
如何使用
管道
在父母和孩子之间传回文件
、
、
我正试图和父母一起打开一个文件,然后把它发送给孩子。我希望子程序查找特定的单词,并将文本文件中的行发送回父文件。int fd[2];if ((cpid = fork()) == -1) cout << "ERROR" << endl;} if (cpid == 0) // don't need the write-side o
浏览 0
提问于2018-10-15
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux系统编程之进程间通信方式:管道二
深入理解Linux中进程控制
Linux系统编程之进程间通信方式:命名管道二
Linux命令执行顺序控制与管道、cut、grep、wc、sort
深入理解Linux中进程控制(精讲)
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券