父进程和子进程都在打开命名管道时停留

时间:2013-05-02 01:38:38

标签: file-io pipe named-pipes blocking

父进程已成功为每个帮助程序进程创建命名管道 mkfifo(pipe_name,S_IWUSR | S_IRUSR)

然后它启动帮助程序,并通过以下方式打开每个管道:

::open(pipe_name, O_WRONLY);

在辅助进程端,它通过以下方式打开管道的阅读器侧:

::open(pipe_name, O_RDONLY);

之后还有一些阅读和写作。

该程序几乎总是有效,在偶尔的情况下,它会卡住! 当我将进程附加到ddd时,我看到主要和辅助进程都在打开管道时停留。 几天来我一直对这种现象感到困惑,无法弄明白。另外我不知道如何调试这个:如何让进程超时并返回错误代码?

0 个答案:

没有答案