zombie-process相关内容
有没有办法确保所有创建的子进程在 Python 程序退出时都死了?我所说的子进程是指那些使用 subprocess.Popen() 创建的. 如果不是,我应该遍历所有发出的杀戮然后杀掉 -9 吗?有什么清洁的吗? 解决方案 你可以使用 atexit 为此,并注册任何清理任务以在程序退出时运行. atexit.register(func[, *args[, **kargs]])
..
每当我尝试从 Xcode 运行应用程序时,它都会显示一条错误消息: 即使模拟器没有运行,也会发生这种情况.我从活动监视器强制退出模拟器进程,但它一次又一次地显示该消息. 如果我退出并重新打开 Xcode,它将正常工作,但除了关闭 Xcode 之外还有其他解决方案吗? 规格: 大部分答案都告诉我您必须退出 Xcode 或重新启动 Xcode.如果您处于复杂情况的中间(例如撤消
..
我已经看到了一些零散的信息,但我似乎无法得出一个最终答案.如何清理内核中的僵尸线程? 为了确保并产生处理内核中线程的最终正确方法,我想更广泛地提出这个问题.如何在 Linux 内核中创建、终止和清理线程? 到目前为止我所拥有的是: thread_func:退出 = 0;而 (!must_exit)做东西退出 = 1;do_exit(0)init_module:must_exit =
..
在我基于 Debian 的机器上使用 R 的并行包玩了一段时间后,我仍然找不到在计算后删除所有僵尸子进程的方法. 我正在寻找通用且独立于操作系统的解决方案. 下面是说明 2 个内核问题的简单脚本: 库(并行)testfun
..
我们正在使用python进程来管理长时间运行的python子进程.子进程有时需要被杀死.kill命令不会完全杀死该进程,只会使其消失. 运行以下脚本演示了此行为. import子进程p = subprocess.Popen(['sleep','400'],stdout = subprocess.PIPE,shell = False) 或 p = subprocess.Popen(
..
我有这样的代码... c = fork();if(c == 0){close(fd [READ]);如果(dup2(fd [WRITE],STDOUT_FILENO)!= -1)execlp("ssh","ssh",host,"ls",NULL);_exit(1);}close(fd [WRITE]); fd [READ]和fd [WRITE]是管道文件描述符. 当我连续运行它时,当
..
最近我正在研究 dumb-init ,如果我正确认识到它正在尝试: 以PID1的身份运行,就像一个简单的初始化系统(收获僵尸进程) 信号代理/转发(bash无法做到) 在和此处,他们都提到bash 能够收录僵尸进程,因此我正在尝试验证这一点,但无法使其正常工作. 首先,我编写了一个简单的Go程序,该程序产生了10个僵尸进程: func main(){信号:= make(ch
..
我有一个C程序,使用fork和execlp执行另一个进程(bash脚本).当我想终止此过程时,它会进入僵尸状态.为什么会这样? 创建过程: switch (PID_BackUp= fork()) { case -1: perror("fork"); printf("An error has occurred launc
..
我有一些进程在 top (和)中显示为 ps )。我把事情从真实的脚本和程序中简化了。 在我的 crontab : * * * * * /tmp/launcher.sh /tmp/tester.sh launcher.sh (当然标记为可执行)的内容: #!/ bin / bash #实际脚本在此处处理了一些参数 “ $ @”
..
这里有很多帖子(例如 https://unix.stackexchange.com/questions/217507/zombies-in-bash ),展示了如何在bash或c中创建僵尸进程.我想知道是否有一种方法可以在nodejs中创建它们,所以当我执行ps ax | grep node时,有一行命令段为node . 非常感谢您. 解决方案 回答我自己的问题,以
..
我很好奇,僵尸进程会发生什么,如果它的父母不在乎等待它的话. 假设我们有一个父母和一个孩子.孩子先于父母终止. 从APUE: 内核为每个终止进程保留少量信息...至少 此信息包括进程ID,进程的终止状态.... 需要父母使用waitpid()获取此信息. 但是,如果父母不等孩子就退出了,那会发生什么: 内核是否删除此信息(肯定没有用)? 还是不断收集这些垃圾?
..
我有一个客户端,该客户端的域似乎受到DDoS的严重冲击.在日志中,它是具有随机IP的正常用户代理,但它们浏览页面的速度太快了,无法让人理解.他们似乎也没有要求任何图像.我似乎找不到任何模式,我怀疑这是Windows僵尸舰队. 过去,客户遇到过SPAM攻击的问题-甚至不得不将MX指向Postini,以获得每天6.7 GB的垃圾来停止服务器端. 我想在robots.txt不允许的目录中设置
..
在我的内核为2.6.18的Fedora Core 9 Web服务器上,init不会获得僵尸进程.如果进程表最终没有达到无法分配新进程的上限,这将是可以接受的. ps -el | grep 'Z'的示例输出: F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 5 Z 0 2648
..
我已经在应用程序上工作了一段时间,最近才开始注意到每次启动应用程序时都会产生这些僵尸进程吗?我现在已经关闭了Xcode和模拟器,但是它们只是停留在周围.有没有更好的新方法可以在模拟器上测试您的应用,从而避免这种情况和/或为什么会发生这种情况? ps aux . . . derek 2696 0.0 0.0 0 0 ?? Z 1
..
我有一个为每个客户端处理程序运行新线程的侦听器服务器.每个处理程序都可以使用: proc = subprocess.Popen(argv, executable = "./Main.py", stdout = _stdout, stderr = subprocess.STDOUT, close_fds=False) 在处理程序线程结束之后,在后台运行新进程. 后台进程结束后,保持在
..
我了解到,如果进程无法很好地清理(不会回收/获取其资源),则会创建一个僵尸.调用fork()创建新进程后,父级应始终在该进程上调用waitpid进行清理. 我还了解到,通过分叉本身由fork创建的孩子,然后让孩子死亡而创建了守护程序.显然,一旦执行此操作,UNIX中的init进程(pid#1)就会接管该进程. 我想知道的是-据我所知,当父母去世时,它会自动清理孩子-那么首先如何创建僵尸
..
对于网站,我需要能够启动和停止守护进程.我目前正在做的是 exec("sudo /etc/init.d/daemonToStart start"); 守护进程已启动,但Apache/PHP挂起.进行ps aux显示sudo本身变成了僵尸进程,有效地杀死了所有进一步的进程.尝试从PHP启动daeomon时,这是正常现象吗? 是的,Apache有权执行/etc/init.d/daemo
..
我在使用Python子进程时遇到了一些麻烦,所以我写了一个非常简单的脚本: import os import sys import time pid = os.fork() if pid: #parent time.sleep(30) else: #child #os._exit(0) sys.exit() 当父进程处于休眠状态时,我启动
..
我可以找到有关僵尸的问题,但是没有一个问题可以直接解决它们是什么以及它们为什么以及如何发生的问题.有几个人在回答特定问题时解决了僵尸进程的问题,但没有解决原因. 还有关于僵尸进程的问题以及与Objective-C/Cocoa相关的僵尸对象的问题.有什么区别或这些之间有何关系? Mac/iPhone上的"EXEC_BAD_ACCESS"(或其他平台上的类似错误)是否与僵尸同义? 如何防止
..
我是ios开发的新手,由于EXEC_BAD_ACCESS,我的应用程序崩溃了. 为了检测问题,我通过使用xCode 4.5中的Instruments启用了僵尸并跟踪分配 在检测到“僵尸消息"后,我很难找到代码崩溃的那一部分. 这是仪器的屏幕截图: 解决方案 在开始学习Instruments时,我也遇到了问题,然后我发现必须打开“扩展细节"窗格才能看到它.可能还有其他简便的方法可以启用此功
..