在bash中,当运行( sleep 123 &)时,当子subshell退出时,sleep 123进程将继续运行。如何在sleep 123进程的父子subshell退出之前停止它?
由于接收到了sleep 123和SIGCONT,我正在试图查看是否会终止该进程。我想找一个是否被发送到这个孤立的进程,为什么它不终止?和内核是否将SIGHUP发送到成为孤立进程并包含已停止进程的进程组,默认情况下终止所有进程?的例子
发布于 2018-12-22 18:41:10
这将显示您试图说明的行为:
(sleep 60 & kill -STOP $!)这将sleep放在后台,然后停止它。然后,当子外壳退出时,它会被SIGHUP杀死。
信号可以中断某些系统调用;请参阅这个signal(7)命令页 (特别是“信号处理程序中断系统调用和库函数”一节)。特别是sleep使用的系统调用在调用信号处理程序时会被中断,这在sleep(3)中有记录。
https://unix.stackexchange.com/questions/490495
复制相似问题