如何正确地find内存在iPhone的项目泄漏

在Xcode中开发应用程序内存泄漏正在发生。 当我在扩展的详细视图中检查它们时,它们显示了与实施无关的不同方法。 如何正确地找出哪个对象正在泄漏,以及它在哪里泄漏内存。

当ARC启用时,我们必须照顾内存泄漏或不?

即使有ARC内存泄漏可能会发生,它只是在编译时插入释放和autorelease。

1.你必须用XCode中的Build and analyze检查泄漏, shift+command+b你应该清除这些问题。

2.之后,您可以使用configuration文件选项command+i开始使用仪器。 这会告诉你泄漏的位置。

这个链接也会帮助你http://soulwithmobiletechnology.blogspot.in/2011/04/how-to-check-memory-leaks-in-xcode-4.html

编辑:添加一些截图,希望能够清楚。

在selectleaks之后的分析过程中,selectcall tree选项并选中hide system libraries的框, invert call treeshow obj-c only ,如下图所示。

双击下面的符号名称后,您将看到它正在泄漏的线路。 在这里输入图像说明

你会得到这样的东西。

在这里输入图像说明

是的,即使是ARC也有内存泄漏 。 ARC不是一个垃圾收集器,它只在编译时插入,在关键位置保留,释放和自动释放。 因此,尽pipe它对开发人员有帮助,但应该意识到内存泄漏仍然存在(例如循环引用)。 您可以使用静态分析器开始,并更正显示给您的任何问题。 然后你可以去仪器并select泄漏