泄漏从未出现在Xcode 6.1.1 Instruments工具中

时间:2015-02-24 17:21:10

标签: ios objective-c xcode memory-leaks instruments

Similar to this Q,我试图在一个不断发出内存警告的应用中发现漏洞,但即使我故意将一些漏洞作为这样的健全性检查,例如:

id someObject = [[NSObject alloc] init];
someObject = nil;

在使用XCode 6.1.1的Leaks配置文件时,仪器工具的Leaks部分中没有显示任何内容。我觉得我错过了一些基本的东西"启用"泄漏检测。请帮忙!

1 个答案:

答案 0 :(得分:2)

你在使用ARC吗?在这样,那不是泄漏。

如果您不使用ARC,请注意静态分析器(Xcode的“产品”菜单上的“分析”)在识别各种问题时非常出色。它会立即确定您在问题中提到的问题,从而更快地引起您的注意。确保静态分析仪具有清洁的健康状况。

但是,对于更广泛的问题,泄漏工具无法识别大量内存问题(贪婪缓存,废弃内存,强引用周期等)。使用“分配”工具,拖动图形的一部分以选择范围,并查看已分配但未释放的对象。泄漏工具不会识别许多这些问题,但Allocations工具会。

参见WWDC 2014视频Fixing Memory Problems或WWDC 2013 iOS App Performance: Memory