问题描述
我创建了一个 C 程序,它分叉以创建一些子进程,这些子进程也分叉以创建它们的子进程。它们都休眠 3 秒钟,然后终止。 运行程序后,我用 cntl+z 暂停了它。
流程层次如下。
ubuntu@ubuntu:~$ pstree -p 5955
sample(5955)─┬─sample(5956)─┬─sample(5957)───sample(5959)
│ └─sample(5960)
└─sample(5958)───sample(5961)
现在我想杀死所有人 -
kill 5956 5958 5957 5960 5961 5959
ubuntu@ubuntu:~$ pstree -p 5955
sample(5955)─┬─sample(5956)
└─sample(5958)
有人可以建议为什么前两个孩子(5956、5958)没有被终止?
Ref: 暂停时程序 (sample.c) 的输出:
ubuntu@ubuntu:~$ ./sample
parent PID=5955
Child=5956
Child=5957
Child=5958
Child=5959
Child=5960
end 5959
Child=5961
^Z
[3]+ Stopped ./sample
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)