我正在尝试建立一个过程容器。该容器将触发其他程序。例如-一个bash脚本,它以'&'用法启动正在运行的后台任务。
我所追求的重要功能是:杀死容器时,应该杀死所有在其下产生的东西。不仅是直系子女,还有他们的后代。
当我开始这个项目时,我错误地认为,当您杀死一个进程时,它的孩子也会被自动杀死。我已经从有同样错误想法的人那里寻求建议。尽管可以捕捉到信号并将杀人事件传递给孩子,但这并不是我在这里寻找的东西。
我相信我想要实现的目标,因为当您关闭xterm时,其中运行的所有内容都会被杀死,除非未进行任何操作。这包括孤立的过程。那就是我想要重新创建的东西。
我有一个想法,就是我所寻找的是unix会话。
如果有一种可靠的方法来标识一个进程的所有后代,那么也能够向他们发送任意信号将很有用。例如SIGUSR1。
SIGHUP
其直接子进程发送给它。挂断信号的默认处理程序中止进程执行,因此默认路由是杀死所有后代。阅读有关流程和流程组的更多信息。