问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在 linux中如何结束由一个父进程产生的所有子进程

发布网友 发布时间:2022-04-19 22:43

我来回答

5个回答

热心网友 时间:2024-06-01 19:44

父进程未结束,子进程先结束,会产生僵尸进程。
子进程在调用exit命令结束自己的生命的时候,其实它并没有真正的被销毁,而是留下一个称为僵尸进程(Zombie)的数据结构(系统调用 exit,它的作用是使进程退出,但也仅仅限于将一个正常的进程变成一个僵尸进程,并不能将其完全销毁)。
即使是root身份kill -9也不能杀死僵尸进程。补救办法是杀死僵尸进程的父进程(僵尸进程的父进程必然存在),僵尸进程成为"孤儿进程",过继给1号进程init,init始终会负责清理僵尸进程。
僵尸进程的避免:
(1) 父进程通过wait和waitpid等函数等待子进程结束,这会导致父进程挂起。
(2) 如果父进程很忙,那么可以用signal函数为SIGCHLD安装handler,因为子进程结束后, 父
进程会收到该信号,可以在handler中调用wait回收。
(3) 如果父进程不关心子进程什么时候结束,那么可以用signal(SIGCHLD, SIG_IGN) 通知内
核,自己对子进程的结束不感兴趣,那么子进程结束后,内核会回收, 并不再给父进程发送
信号。
(4) 还有一些技巧,就是fork两次,父进程fork一个子进程,然后继续工作,子进程fork一 个孙进
程后退出,那么孙进程被init接管,孙进程结束后, init会回收。不过子进程的回收 还要自己
做。
建议你使用第三种方法,父进程直接忽略子进程的结束,留给内核作回收处理。这样就不
会产生僵尸进程。

热心网友 时间:2024-06-01 19:39

killall命令杀死同一进程组内的所有进程。它要指定要终止的进程的名称,而非PID。

热心网友 时间:2024-06-01 19:38

pkill -a

热心网友 时间:2024-06-01 19:40

采用ps + grep + awk + pkill命令组合,可实现“结束由一个父进程产生的所有子进程”,如:

父进程名为 parent_proc,可先根据进程名称,得到进程PID

ps -ef |grep parent_proc|egrep -v grep | awk '{print $2}'

根据父进程PID终止所有子进程PID,保留父进程

pkill -9 -P $p_pid

完整脚本:

for p_pid in `ps -ef |grep parent_proc|egrep -v grep | awk '{print $2}'`
do
    pkill -9 -P $p_pid
done

有关各命令的详情介绍请查阅相关参考资料。

热心网友 时间:2024-06-01 19:43

LInux 父进程关闭子进程

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
win7窗口淡入淡出慢 iPhone 小技巧:如何将 Safari 浏览器中的网页添加到桌面? 锰粉是什么颜色的金属 铁精粉的常见颜色是什么 烟花爆竹中的金属粉末如何使其呈现绚丽色彩? 金粉有哪些种类 灰土每层回填最大厚度 灰土基础简史 如何让一个喜欢你的女孩讨厌你! 西环里新区基本资料 linux命令行怎么结束进程 在linux中如何终止指令的运行 linux怎么结束进程 Linux中怎么终止正在运行的后台程序 linux中怎么终止正在运行的进程 linux 进程终止有哪几种方式 郎朗简介 朗朗的钢琴几级啊? 郎朗的钢琴水平是否是世界最高? 朗朗是钢琴几级? 朗朗的钢琴级别 朗朗在钢琴界有什么地位?跟贝多芬、克莱德曼之类... 钢琴老师说朗朗技术无敌,请问他厉害在哪里?同样... 朗朗和李云迪谁的钢琴级别高 郎朗的钢琴造诣在国际上是什么水平?他是怎么做到的? 郎朗的钢琴艺术水准在国际上大概是什么档次 朗朗的钢琴几级 郎朗的钢琴水平在国际上是一个什么等级?算很牛逼吗? 郎朗跟王力宏的钢琴级别分别是多少?它们两个谁比... 光固化3D打印机 原料是什么? Linux里面杀掉进程命令是什么? linux中exit与_exit有什么区别? Linux中,杀死进程,结束进程以及停止进程有什么区别啊? 计算机网络中的共享资源主要是指什么资源 计算机网络中可以共享的资源包括哪些? 资源共享的好处与坏处分别是什么? 聂怎么读音? 计算机的共享资源有哪些 详细�0�3 聂怎么读 聂是什么字组词是什么 资源共享的平台有哪些? 聂这个字念什么 网络资源共享的方式有哪些 安全生产教育的培训范围有哪些 聂怎么组词 网络上软硬件共享资源有哪些 聂 这字怎么读? 资源共享有什么用啊? 安全教育的对象有哪五种? 聂怎么读音是什么