记录一次僵尸进程
直接出现僵尸进程 77个
瞬间傻逼了, 这是多么奇葩!!
赶紧看下 这些进程是啥
ps -elf |grep Z 查看
发现没---都是同一个, 其父进程也是同一个。
在回想一下 僵尸进程怎么产生的----- 进程退出的时候,其资源没有被回收,也就是 其task_struct资源没有被销毁。进程处理Z 状态。
所以此时 发出kill 信号肯定是没用的。
那怎么处理呢??
我们在想一想,防止出现僵尸进程的方法,
1、父进程使用wait()或者waitpid()之类的函数等待子进程退出 /使用信号函数sigaction为SIGCHLD设置wait处理函数
2、设置SIGCHLD信号为SIG_IGN(即,忽略SIGHLD信号),系统将不产生僵尸进程,
3、孤儿进程,是init进程接管孤儿进程
所以解决办法就是: 将这些僵死进程的父进程 给kill掉 让init进程来回收资源
kill -9 3468 后
top 可以看到 僵尸进程位0
同时 此时代码需要处理.将进程多次fork后在处理
留下一个问题: 为什么父进程没有回收子进程???
http代理服务器(3-4-7层代理)-网络事件库公共组件、内核kernel驱动 摄像头驱动 tcpip网络协议栈、netfilter、bridge 好像看过!!!!
但行好事 莫问前程
--身高体重180的胖子
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!