gpt4 book ai didi

bash - Unix 命令 Timeout 是否也会杀死进程的任何子进程?

转载 作者:行者123 更新时间:2023-12-05 01:42:11 30 4
gpt4 key购买 nike

manual对于'timeout'命令,如果它不与'--forground'选项一起使用,它似乎会杀死子进程,但我找不到任何关于它的行为方式的明确定义。

timeout 命令是否也会终止子进程/与它一起使用的任何命令的进程组?

最佳答案

timeout 的 GNU coreutils 版本可以查看其实现 here .

是否创建(并作为一个整体终止)进程组确实取决于是否传递了 --foreground,正如您从文档中推断的那样。


更明确一点:

  • --foreground 未被 使用时,我们调用 setpgid() 创建一个新的进程组,将 timeout 命令本身和该组内调用的命令。当稍后发生超时时,kill() 被传递给 0 作为要终止的 PID,指定应该以整个进程组为目标。
  • 当使用 --foreground 时,只有立即 fork 的 PID 被通知,而不是进程组的其他成员。

关于bash - Unix 命令 Timeout 是否也会杀死进程的任何子进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52283215/

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