C管道,如何让孩子对等待孩子的父母说“我等stdin”

时间:2018-09-04 11:30:08

标签: c pipe fork deadlock execvp

有一次,我在grep之类的管道中让父级执行ls -la和子级执行ls -la | grep something,并按要求工作。父母等待孩子完成。但是现在相反情况下,父级正在执行ls -la,而子级grep正在执行。父母等待孩子完成,孩子等待标准输入。如何避免死锁?我应该并行执行它们并将输出保存到缓冲区吗?通过execvp执行时该怎么办?

0 个答案:

没有答案