问题标签 [zombie-process]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
789 浏览

iphone - 了解 Instruments 中的僵尸踪迹

我是 ios 开发的新手,我的应用程序由于 EXEC_BAD_ACCESS 而崩溃。为了检测问题,我在 xCode 4.5 中使用 Instruments 启用了 Zombies 并跟踪 Allocations 在它检测到 Zombie Messaged 后,我很难找到代码崩溃的哪一部分。

这是仪器屏幕截图: 在此处输入图像描述 感谢您的帮助。

0 投票
1 回答
3104 浏览

c - 在 while 循环中使用 wait() 而不是 waitpid()

我知道 wait() 和 waitpid() 之间的区别之一是 waitpid 有一个 WNOHANG 选项,它告诉 waitpid 如果有运行的子进程尚未终止,则不要阻塞。如:

如果我使用 wait() 而不是 waitpid(),如果有运行的子进程尚未终止,则无法阻止 wait() 阻塞。但是,我想知道 wait() 在这里是否可以正常工作,即使它可能会阻塞。

0 投票
1 回答
1003 浏览

c - 如何在 Linux 内核中创建多个僵尸?

我正在为类编写一个项目,该项目可以在 Linux 内核中找到僵尸并收获它们。

我找到了会创建一个僵尸的代码,它在等待()之后被收割,但我的程序必须收割很多,大约 1000 个。

我对内核操作/多线程非常陌生,我在网上找到的处理僵尸的资源要么过于技术化,要么含糊不清。

这是我正在使用的代码:

再一次,我的问题是:我应该如何去创建多个僵尸,让我的程序收获?

非常感谢-贾里德

0 投票
2 回答
345 浏览

objective-c - 为什么在这种情况下重新分配之前我需要将静态指针设置为 nil

对于我的一个类,我有一个“始终在最后创建的对象上保留静态引用”模式。当我创建它的新实例时,应该将静态指针设置为这个新实例。解决方法如下:

  • 创建 AViewController a > Init 被调用 > 静态指针设置为
  • 创建 AViewController b > 调用初始化 > 静态指针应设置为 b。但是静态指针没有设置为b!它把自己从a设置为 nil!

对象 a 大部分时间在 b 被创建之前被释放。

释放静态变量时是否总是需要将它们重置为零?不,请参阅下面我自己的答案。

如果没有“actualSelf = nil;”行,则通过 ARC 对象 a 在actualSelf 设置为对象 b 的那一刻被释放。

0 投票
1 回答
106 浏览

java - 用 Drools 跑步就餐

我正在尝试使用 Drools 运行 Repast 僵尸示例,但在运行时出现相同的错误。我创建了僵尸示例并将所有 Drools jar 文件添加到类路径中。但是当我调用 KnowledgeBuilderFactory 的 newKnowledgeBuilder() 函数时:

KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();

我得到这个例外:

线程“AWT-EventQueue-0”中的异常 java.lang.NoClassDefFoundError: org/drools/builder/KnowledgeBuilderFactory

有没有人用 Drools 运行 Repast 的经验?

0 投票
0 回答
152 浏览

ios - 无法从僵尸那里获得有关崩溃的线索

我从控制台收到此错误

我也启用了僵尸,Diagonotics但无法得到任何提示错误是什么。我的 xcode 已挂起,并向我发送以下消息:

在此处输入图像描述

僵尸什么都没有告诉我

在此处输入图像描述

错误是什么以及如何以正确的方式使用僵尸来捕获错误..

0 投票
0 回答
214 浏览

windows - 使用 Windows 子类回调后的僵尸进程

我正在使用 Windows API 的 SetWindowSubclass(...) 方法来对传输到超出我的应用程序范围的 WinProc 的“挂钩”消息。

我的应用程序由 DLL 中的核心和插件组成。

我已经在我的一个插件 DLL 中实现了这样的子类。

我这样设置子类:

我的问题是,当我退出应用程序时,我可以在“Windows 任务管理器”工具中看到继续运行的进程。在调试模式下,我检查了它是否调用了 RemoveWindowSubclass(),它确实做到了。如果我用这段代码删除我的插件,就没有僵尸进程......

有人对这个问题的解决方案有想法吗?

提前感谢您的帮助

0 投票
2 回答
495 浏览

ios - iPhone模拟器中的僵尸进程?

我已经在应用程序上工作了一段时间,最近才开始注意到每次启动应用程序都会产生这些僵尸进程?我现在已经关闭了 Xcode 和模拟器,但它们仍然存在。是否有一些新的更好的方法可以在模拟器上测试您的应用程序来避免这种情况和/或为什么会发生这种情况?

0 投票
2 回答
158 浏览

adt - 如何在 Ada 中找到僵尸?

我试图使用 System.Adress_image 列出程序中分配对象的所有地址。

但是我只能打印我拥有的变量的地址。例如,我有一个堆栈,我可以打印所有堆栈元素的地址。然后我删除指向堆栈节点之一的指针,以便该对象不再在堆栈中。

删除的节点不会自动进行垃圾收集(Ada 2005),所以我想知道该节点的地址。为什么不是程序中所有分配对象的地址?

我怎样才能完成这项任务?

系统包: http: //www.adaic.org/resources/add_content/standards/05aarm/html/AA-13-7.html

僵尸被称为“死物但仍然活着”。

0 投票
1 回答
14832 浏览

linux - 为什么存在僵尸进程?

维基百科说“一个终止但从未被其父进程等待的子进程成为僵尸进程。” 我运行这个程序:

这会创建一个僵尸进程,但是我不明白为什么这里会创建一个僵尸进程?

程序的输出是

但是为什么在这种情况下“子进程终止但没有被父进程等待”?