【问题标题】:Xcode Leaks tool doesn't workXcode 泄漏工具不起作用
【发布时间】:2011-05-26 10:37:26
【问题描述】:

我正在使用最新的 Xcode 开发一些 iOS 应用程序。我目前对 Xcode 的 Leaks 工具很感兴趣。

我使用 Leaks 来运行我的应用程序(其中包含数千行代码,而且绝不是内存安全的)。我运行了我的应用程序并在上面做了各种各样的事情。但是 Leaks 并没有报告任何泄漏(就像这个屏幕截图 http://d.pr/NKbF 一样)。

然后我尝试使用这组代码来模拟一些泄漏:

int i = rand();
NSMutableString *leak = [[NSMutableString alloc] initWithFormat:@"%d qwerty", i];
leak = NULL;

但同样没有报告泄漏。

帮助...有人可以帮助我吗? :-(

【问题讨论】:

    标签: iphone xcode memory ios memory-leaks


    【解决方案1】:

    因此,Leaks 工具是保守的,换句话说,它报告的每个问题很可能都是泄漏,但不一定会报告每个泄漏。这被认为比替代方案更好,它可能会报告每一次泄漏,但也可能报告不是泄漏的事情。

    虽然我认为这不太可能,但它可能只是漏掉了你的泄漏。

    【讨论】:

    • 谢谢格雷厄姆!我会尝试一些其他方法来模拟泄漏。
    【解决方案2】:

    查找泄漏(和其他问题)的第一大工具是静态分析器。您可以通过选择“构建和分析”或 shift-option-A 来使用它。完成后选择构建结果并单击显示的蓝色方块,然后在代码窗口中再次单击。你会得到一个很好的视觉指示,说明出了什么问题。

    Leaks 很有用,但更像是一种长期的微调工具。分析器找出您自己制造的问题,以及现在和每次使用您的课程时发生的问题。

    【讨论】:

    • 谢谢亚当。我刚刚尝试了 Analyzer,它确实很有帮助。虽然我仍然想知道为什么在 Leaks 中没有报告泄漏。真是奇怪……
    • 我不建议使用静态分析作为 Instruments 的替代品。使用它们。他们都发现了不同类型的错误。
    猜你喜欢
    • 2016-04-02
    • 1970-01-01
    • 2011-07-15
    • 2011-10-29
    • 2014-11-16
    • 1970-01-01
    • 1970-01-01
    • 2013-05-10
    • 2011-09-17
    相关资源
    最近更新 更多