我已经在目标C ARC项目中编写了代码一切正常但在运行我的项目后20-25我的项目崩溃了。我已经在xcode仪器上测试了我的项目,我发现没有泄漏我的仪器我观察到我的实时字节不断增加。有没有办法处理这个或有任何方法可以删除所有内容并释放我的项目分配的内存。
答案 0 :(得分:3)
最常见的原因是保留周期。当您有两个对象A和B彼此保持强引用时,会发生保留周期。根据定义,在引用计数为0之前,ARC不会释放对象。因此,除非先删除B,否则不能删除A,并且在删除A之前不能删除B. 要解决此问题,请将其中一个强引用更改为弱引用。通常,您希望容器类包含强引用,而子类只包含对其容器的弱引用。以下是一些示例和更详细的信息: