仪器'Memory Leak'分析,其他工具是否提供了更多信息,重新找到泄漏的根本原因?



re Instruments的"内存泄漏"分析,其他工具是否提供了更多信息来查找泄漏的根本原因

我一直关注的问题是找到根本原因(而不是创建泄漏对象的地方,仪器告诉)。关于我被卡住的例子,请参阅此代码的泄漏对象的来源是什么?简单地说,我似乎没有在某个地方发布一个对象,但这个对象被绑定在一个父对象中,该父对象位于父对象中等等,所以我很难找到我出错的地方。

因此,我的问题是,除了仪器(以及使用"内存泄漏"的分析,它告诉泄漏对象的创建位置,但不是根本原因)之外,有没有其他工具可以让我运行,除了仪器重新跟踪根本原因点之外,还可以给我更多的信息?

编辑1-注意我的应用程序将建立&在没有任何问题的情况下进行分析。

我对读取仪器显示还很陌生,但我在应用程序中发现一些漏洞的方法是查看仪器中分配的对象计数,然后重复执行一些简单的UI功能。当我一遍又一遍地敲击屏幕时,我会看到两三个物体的数量在一段时间内不断增加。

查看这些类,我发现在开发过程中,我添加了一些属性,然后在dealloc代码中忘记了nil。一旦我添加了这些声明,泄露的信息就消失了。

有趣的是,这些并没有出现在泄漏显示或静态分析仪中。至少我没认出。

最新更新