未知的内存泄漏

时间:2011-12-19 12:31:15

标签: iphone ios4 ios5

我正在分析一个iOS应用程序,用Instruments检查内存泄漏。我选择了Allocations和/或Leakage来检查。

当应用程序运行时,All Allocations增长到1.3MB。点击一个按钮,显示一个选择器,然后选择一个项目并删除选择器,All Allocations成长。我检查没有明显的内存泄漏,因为没有RED条。

有任何线索吗?我发现有很多未知的Malloc 16 Bytes,... Malloc 32 Bytes,...但是我没有有用的信息可以跟踪。

还有其他方法可以解决这些问题吗?

1 个答案:

答案 0 :(得分:1)

使用快照查找内存折痕,请参阅:bbum blog

基本上有一种方法是运行仪器分配工具,获取快照,运行代码直观和另一个快照重复3或4次。这将指示在迭代期间分配但未释放的内存。

要弄清楚披露的结果,以查看个别分配。

如果您需要查看对象使用仪器的保留,释放和自动释放的位置:

在仪器中运行,在分配中设置“记录参考计数”(您必须停止记录以设置选项)。导致选择器运行,停止记录,搜索那里的ivar(datePickerView),向下钻取,你将能够看到所有保留,释放和自动释放发生的位置。

enter image description here