【问题标题】:objective-c check If a/some release(s) are forgotobjective-c 检查是否忘记了某个/某些版本
【发布时间】:2014-04-05 18:37:59
【问题描述】:

有没有办法知道在使用 ARC 时是否有一些 NSString 或指针或类似的东西没有被释放/删除?

【问题讨论】:

  • 使用带有“泄漏”工具的仪器 ...
  • 先使用静态分析器。
  • 是的,我做到了。但是当我要分析 -> 泄漏时,似乎还有另一个,它似乎来自 UILabel 和 initWithBytes。但是我检查了我的代码,我没有发布任何 UILabel。也许是故事板?

标签: objective-c automatic-ref-counting release


【解决方案1】:

在您的 xcode 中,在运行项目之前,只需单击 Build And Analyze 选项,它会告诉您代码的警告和潜在泄漏。

【讨论】:

  • 是的,我做到了。但是当我要分析 -> 泄漏时,似乎还有另一个,它似乎来自 UILabel 和 initWithBytes。但是我检查了我的代码,我没有发布任何 UILabel。也许是故事板?
【解决方案2】:

如果要检查特定对象,请对 NSLog self 实现 -dealloc 方法,并可能实现 init 以便匹配计数。 实际上,您应该首先在逻辑上正确设置您的代码。当然你会这样做,所以下一步是使用仪器(泄漏)。查看 WWDC 会议,了解如何有效地使用 Instruments。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-26
    • 2018-05-02
    • 1970-01-01
    相关资源
    最近更新 更多