直接写入不同进程的stdout

时间:2014-09-11 18:51:57

标签: c unix

是否可以直接写入另一个进程的stdout?

我们有两个独立的流程A和B. 进程B应该从进程A写入它的stdout信息。我正在查看它并找到了管道......但问题是我不喜欢需要从A写入并同时从B读取(信息量可能非常大,管道本身受系统限制?)主要是因为它太复杂了。也许从A写入文件然后将此文件从B ...打印到stdout可能更容易。

更新: 从系统启动开始,进程A应该不断运行(Unix) 期望进程B从控制台执行并从进程A获取信息。 流程之间的通信很容易在我们的环境中实现。但由于信息量可能非常大,我想以高效的方式从A到stdout获取信息

1 个答案:

答案 0 :(得分:1)

您可以将STDOUT文件描述符(1)从 B 发送到 A 通过 UNIX域套接字连接。

你可以manually。或者您可以使用便携式library

在任何一种情况下, A 过程都会收到 B 的文件STDOUT描述符。然后 A 可以write()到它。