【问题标题】:Getting Exception SIGKILL when relaunching app重新启动应用程序时出现异常 SIGKILL
【发布时间】:2011-07-15 05:49:25
【问题描述】:

我在 iPhone 模拟器中构建并运行一个项目。我通过按主页按钮将其发送到后台。然后我双击主页按钮在后台找到我的应用程序并点击它。它变为活动状态,应用程序继续运行。在这里,无论我重复多少次,我都没有问题。然后我通过点击应用程序图标上的小红色减号来终止该过程。但是,如果我再次点击应用程序图标重新启动它,我会收到 SIGKILL 错误并且应用程序崩溃。这可能是什么原因?会不会是我的 XCode 偏好造成的?

【问题讨论】:

  • 它只是说收到 SIGKILL
  • SIGKILL 错误的可能性很大。提供您的控制台信息。
  • 尝试在可执行文件中设置 nszombieenabled...如果是内存管理问题
  • 你在发布时在做什么?你在读一些文件吗?

标签: iphone exception sigkill


【解决方案1】:

这并不是真正的崩溃:只是 XCode 对您点击红色的小减号有延迟反应。当您以这种方式终止您的应用程序时,操作系统会向您的进程发送一个 SIGKILL 信号 - 但 XCode 的调试器在您重新启动应用程序之前不会“看到” SIGKILL。

顺便说一句,您可以通过点击调试器中的“继续”按钮从这个“崩溃”中“恢复”。

【讨论】:

  • 但是,有一点细微差别。并非所有应用都会发生这种情况。只有其中 2 个会发生这种情况
  • 可以说它是 XCode 中的一个错误,它根本不会发生 - 调试器确实不应该将来自操作系统的 SIGKILL 显示为要调试的东西 - 但我怀疑它可能需要一段时间才能出现到 Apple 的“XCode 中要修复的问题”列表的顶部。但是,如果您要向 Apple 提交错误报告,如果您将您的两个应用程序始终如一地解决该错误(而您的其他应用程序没有)包括在内,这可能会对他们有所帮助。
【解决方案2】:

当我没有让调试器从应用程序中优雅地分离时,我在模拟器中看到了类似的崩溃。与其通过点击红色的小减号来终止应用程序,不如尝试在 Xcode 中点击“停止”按钮。

要进一步确认这与调试器有关,请尝试通过点击图标首次运行应用程序,而不是在 Xcode 中使用 Build and Run。然后通过点击红色 X 杀死它并重新启动它。如果它在没有附加调试器的情况下仍然崩溃,那么我的假设是无效的。

【讨论】:

    猜你喜欢
    • 2014-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-04
    • 2015-06-09
    • 2020-09-21
    • 2011-08-30
    • 1970-01-01
    相关资源
    最近更新 更多