【问题标题】:Problem with finding leak code查找泄漏代码的问题
【发布时间】:2011-03-27 18:05:57
【问题描述】:

我正在使用 xcode 3.2 并且我的应用程序中有泄漏,但是如何在我的代码中找到泄漏的行?在早期版本的 xcode 中,我只是用来双击仪器中用于显示 xcode 并指向泄漏线的对象。但在 3.2 版本中,我无法做到这一点。 请任何人告诉我如何找到内存泄漏的行?

任何帮助将不胜感激。

【问题讨论】:

  • XCode 3.2 中的工具发生了变化——但只是为了更好。深入到可疑代码应该更更容易。当您尝试“双击对象”时,您看到了什么行为?
  • 它显示我不明白的汇编代码。
  • 您使用的是调试版本吗?它应该向您展示整个堆栈 - 在某些点上包含您的代码,在其他点上包含框架代码。您应该能够看到代码的源代码。如果您使用的是发布版本,您可能会为方法本身获得奇怪的符号名称,但如果您双击它们,您仍然应该获得代码。在堆栈列表下方,您会看到一个滑块。将其向左滑动更多(但不是一直)以过滤掉大部分框架代码。
  • 顺便说一句,我刚刚完成了一篇新的博客文章,其中介绍了一些帮助您从一开始就避免泄漏的技术。第二天左右在这里观看:www.levelofindirection.com

标签: iphone memory-leaks instruments


【解决方案1】:

除了我对您的问题的 cmets,您可能还会发现这很有帮助(它是此页面右侧“相关”列表中的顶部链接):

Instruments Leaks - Not showing my source code

【讨论】:

    【解决方案2】:

    您可能正在使用 10.6,然后您可以使用非常酷的 Build & Analyze 功能(shift+cmd+a 或在菜单 Build->Build & Analyze 中)。

    【讨论】:

    • 这是一个很好的建议,但没有回答发帖者的问题。就个人而言,我发现 LLVM 分析器遗漏了很多 - 所以最好使用 both 工具。
    • 我已经用过了。分析仪没有显示泄漏,但仪器显示泄漏。
    猜你喜欢
    • 1970-01-01
    • 2011-01-13
    • 2012-08-22
    • 2010-12-26
    • 1970-01-01
    • 1970-01-01
    • 2016-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多