虽然我的iPhone代码没有ANALYZE问题,但当我运行Instruments寻找内存泄漏时,我似乎看到了很多。一个基本上是我使用的自定义类,比如MyCustomClass。乐器基本上说:
来自泄漏块的仪器摘要 - 历史
我已经自动释放了该对象,所以我想知道是否存在通过addObject将其添加到NSMutableArray的方式的问题
问题 - 我的整体问题是,当对NSMutableArray执行“addObject”时,对于自动释放的对象,是否有任何特定步骤接收阵列的代码在完成时需要执行?是否可能即使通过我的对象自动释放,将它添加到数组也会保留,所以当我完成NSMutableArray时,我需要手动迭代数组中的所有对象并释放它们? / p>
感谢
答案 0 :(得分:2)
如果您已对添加到阵列中的所有对象调用autorelease
,那么就内存管理而言,您无需执行任何其他工作。 NSMutableArray
将管理添加到其中的对象的内存状态(如在添加时保留它们,并在从数组中删除对象时释放它们,通过显式释放它或当数组是发布)。您需要做的就是确保在完成后释放阵列。