unix中的命名管道

unix中的命名管道,unix,named-pipes,Unix,Named Pipes,我的程序有两个进程。一个进程写入FIFO(命名管道),必须等待另一个进程从FIFO读取,然后等待该进程返回结果(写入FIFO以被该进程读取)。 我的问题是,如何知道另一个进程从FIFO读取数据,然后调用read()系统调用以获得结果?大多数UNIXen都有双向管道(man管道) Linux,IIRC没有这些,所以您需要使用socket\u pair,它可以方便地使用UNIX域套接字,提供大致相同的功能 根据我的经验,移植代码通常只需要将对管道的调用替换为对套接字对的调用

我的程序有两个进程。一个进程写入FIFO(命名管道),必须等待另一个进程从FIFO读取,然后等待该进程返回结果(写入FIFO以被该进程读取)。
我的问题是,如何知道另一个进程从FIFO读取数据,然后调用read()系统调用以获得结果?

大多数UNIXen都有双向管道(man管道)

Linux,IIRC没有这些,所以您需要使用
socket\u pair
,它可以方便地使用UNIX域套接字,提供大致相同的功能

根据我的经验,移植代码通常只需要将对
管道的调用替换为对
套接字对的调用