父进程已成功为每个帮助程序进程创建命名管道 mkfifo(pipe_name,S_IWUSR | S_IRUSR)
然后它启动帮助程序,并通过以下方式打开每个管道:
::open(pipe_name, O_WRONLY);
在辅助进程端,它通过以下方式打开管道的阅读器侧:
::open(pipe_name, O_RDONLY);
之后还有一些阅读和写作。
该程序几乎总是有效,在偶尔的情况下,它会卡住! 当我将进程附加到ddd时,我看到主要和辅助进程都在打开管道时停留。 几天来我一直对这种现象感到困惑,无法弄明白。另外我不知道如何调试这个:如何让进程超时并返回错误代码?