【问题标题】:Xcode Instruments - Enable NSZombie Detection? Where is it?Xcode Instruments - 启用 NSZombie 检测?它在哪里?
【发布时间】:2011-07-10 01:36:45
【问题描述】:

我看过这个视频 http://www.markj.net/iphone-memory-debug-nszombie/

这家伙显示了一个名为 Enable NSZombie Detection on Allocations 的 Instruments 选项,但我的 Instruments 没有显示此选项。这个人的视频是使用一年前的 Instruments 版本完成的,我使用的是 Xcode 3.2.5。你们知道这个选项现在在哪里吗?如何为 iPhone 应用启用它?

谢谢

【问题讨论】:

    标签: xcode ios memory-management instruments


    【解决方案1】:

    在 XCode 4.0 中,此“启用僵尸”选项仅存在于 iPhone 模拟器中,而不是当您在实际设备上配置文件时。

    【讨论】:

      【解决方案2】:

      如果您在模拟器中运行,僵尸选项在 Xcode 3.2.6 中的分配工具下可用。对于调试由于太多dealloc而导致的内存崩溃,模拟器几乎每次都能像设备一样工作。顺便说一句,我是问题中的“那个人”;-)

      【讨论】:

      • 啊,你就是那个家伙!!!!感谢您的视频,但我的问题是我的应用程序正在运行核心运动,而模拟器将无法正常工作,如果您在设备上进行调试,此选项将不会显示。不管怎样,谢谢。为视频 +1。
      • 用 isimulate 试试。我已经将它与我们的 open-gl 触摸屏游戏一起使用,效果很好。 vimov.com/isimulate
      • Instruments 4.2 怎么样?我找不到它。
      【解决方案3】:

      您可以在分配工具的工具中找到它。最简单的做法是选择:

      运行 -> 使用性能工具运行 -> 分配

      这将启动应用程序,仪器将开始录制。但是,僵尸检测可能已关闭。要打开它,请停止录制,单击“i”图标,然后选中“启用 NSZombie 检测”。启用后,重新开始录制。

      需要注意的是,在 XCode 4.0 中,只能在模拟器中启用僵尸检测,而不是在设备上运行时启用。

      【讨论】:

      • 抱歉,此选项不适用于 iPhone 应用程序,仅适用于 Mac 应用程序,正如我所说,分配工具不再具有它。
      • 你是对的,由于某种原因,菜单选项似乎可用,但我创建了默认的基于导航的 ios 应用程序,使用 Allocations 性能工具运行它,单击“i”图标对于分配工具,并选中“启用 NSZombie 检测”。
      • 您使用的是什么版本的 Xcode?我用的是3.2.5,我的仪器没有这个选项,很奇怪。
      • 3.2.5 也是如此。但是,实际功能在 Instruments 本身中,我使用的是 2.7 版(3017)。我将更新我的答案并删除有关 Xcode 中 iOS 应用程序可用的 Zombies 菜单项的部分。
      • 谢谢。你做这个视频真是太好了。看了你的视频,我意识到了问题。我在设备上调试,你在模拟器上调试。现在我看到这个选项只显示在模拟器上(感谢 Apple!)。问题是我的项目使用核心运动,所以我不能使用模拟器。不管怎么说,还是要谢谢你。我正要重新安装 Xcode。
      猜你喜欢
      • 1970-01-01
      • 2012-03-21
      • 1970-01-01
      • 2011-07-20
      • 2011-12-29
      • 2019-02-27
      • 2011-03-08
      • 1970-01-01
      相关资源
      最近更新 更多