
请帮助我理解如何使用图片中显示的统计信息。如何有效地使用heapshot来检测内存泄漏?
我已经添加了使用leaks.but的仪器图像,我无法找到内存泄漏的确切位置。请指导我这方面的工作。

发布于 2011-09-08 22:34:58
基本上,这个屏幕截图中的堆截图将显示在上一个快照之后创建的所有对象,并且这些对象仍然是“活动”的(保留计数> 0)。
典型的用法是点击"Mark Heap",然后导航到视图控制器,点击几个按钮,执行一些操作,然后点击“back”按钮。拍摄另一个快照并检查对象列表。你应该确保周围没有任何应该清理的物体。这可能是视图控制器本身、模型对象等。
如果要检测真实的泄漏(未引用的对象),请使用泄漏工具。如果你想找到其他类型的无界内存增长,即仍然被引用的对象和不应该被引用的对象,请使用分配工具检查堆快照,如此屏幕截图所示。
编辑:
你在你的原始帖子中添加了一个泄密截图。要查看此对象分配位置的堆栈跟踪,请单击此按钮:

这应该会向您显示对象的创建位置。然后,您需要找出适当的发布调用需要去哪里。
https://stackoverflow.com/questions/7349580
复制相似问题