首页

文章

在 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 父进程关闭子进程

玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 linux命令行怎么结束进程 在linux中如何终止指令的运行 linux怎么结束进程 Linux中怎么终止正在运行的后台程序 linux中怎么终止正在运行的进程 linux 进程终止有哪几种方式 郎朗简介 朗朗的钢琴几级啊? 郎朗的钢琴水平是否是世界最高? 朗朗是钢琴几级? 朗朗的钢琴级别 朗朗在钢琴界有什么地位?跟贝多芬、克莱德曼之类... 钢琴老师说朗朗技术无敌,请问他厉害在哪里?同样... 朗朗和李云迪谁的钢琴级别高 郎朗的钢琴造诣在国际上是什么水平?他是怎么做到的? 郎朗的钢琴艺术水准在国际上大概是什么档次 朗朗的钢琴几级 郎朗的钢琴水平在国际上是一个什么等级?算很牛逼吗? 郎朗跟王力宏的钢琴级别分别是多少?它们两个谁比... 光固化3D打印机 原料是什么? Linux里面杀掉进程命令是什么? linux中exit与_exit有什么区别? Linux中,杀死进程,结束进程以及停止进程有什么区别啊? 计算机网络中的共享资源主要是指什么资源 计算机网络中可以共享的资源包括哪些? 资源共享的好处与坏处分别是什么? 聂怎么读音? 计算机的共享资源有哪些 详细�0�3 聂怎么读 聂是什么字组词是什么 资源共享的平台有哪些? 聂这个字念什么 网络资源共享的方式有哪些 安全生产教育的培训范围有哪些 聂怎么组词 网络上软硬件共享资源有哪些 聂 这字怎么读? 资源共享有什么用啊? 安全教育的对象有哪五种? 聂怎么读音是什么
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com