gpt4 book ai didi

linux - 防止SIGPIPE

转载 作者:太空狗 更新时间:2023-10-29 11:10:20 26 4
gpt4 key购买 nike

让我们考虑以下示例。

我有一个创建管道的父进程,生成一个子进程并使用该管道读取子进程的标准输出。在某个时候,父进程不再对子进程的输出感兴趣,并关闭管道的读取端。

显然,如果子进程继续写入,是否会导致子进程接收到 SIGPIPE 信号。

问题:有没有一种方法可以将子进程的输出重定向到/dev/null,这样它仍然可以继续运行并产生输出,但是父进程可以继续做其他事情并调用waitpid 稍后在 child 身上?请注意,将 child 的 SIGPIPE 处理程序设置为 SIG_IGN 不是一个选项,因为我无法控制子进程的信号处理程序。

最佳答案

自己模拟 /dev/null -- fork() 一个新进程,其工作是读取并忽略子进程的输出。

关于linux - 防止SIGPIPE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11302873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com