我的程序有两个进程。一个进程写入FIFO(命名管道),必须等到另一个进程从FIFO读取然后等待该进程返回结果(写入FIFO以便由此进程读取)。 我的问题是,如何知道数据是由另一个进程从FIFO读取,然后调用read()系统调用结果?
答案 0 :(得分:0)
大多数UNIXen都有双向管道(man pipe)
Linux,IIRC还没有,所以你需要使用socket_pair
,它可以方便地使用UNIX域套接字提供大致相同的功能。
根据我的经验,移植代码通常除了通过调用pipe
socket_pair
的调用之外几乎没有其他要求