【发布时间】:2011-10-04 02:27:29
【问题描述】:
所以我想知道 xcode 4 中的泄漏工具有多准确。我应该相信它可以找到我所有的内存泄漏,还是应该做其他事情?
【问题讨论】:
-
不知道为什么有人投票结束这个;这是一个非常具体且非常有效的问题。许多人错误地认为“如果泄漏显示没有泄漏,我的工作就完成了”。
标签: objective-c memory-leaks xcode4 instruments
所以我想知道 xcode 4 中的泄漏工具有多准确。我应该相信它可以找到我所有的内存泄漏,还是应该做其他事情?
【问题讨论】:
标签: objective-c memory-leaks xcode4 instruments
Leaks 专门扫描所有内存并找到任何看起来像指针的东西。如果那个类似指针的值指向一个分配,那么这个分配就不会泄露。
即这是一个非常保守的扫描,因此通常不会报告有效泄露的内容。
更重要的是,Leaks 无法报告无用增加的内存。 IE。如果您有一个“只写缓存”,您不断填充缓存,从不读取缓存,并且一路丢失密钥,那么所有内存都不会泄漏(“它在缓存中,伙计!”),但它也完全没用。
为此,有Heapshot Analysis。 I wrote up a while ago 的一个示例用例。
【讨论】: