我在main.m中有内存泄漏,可能导致什么?

Dev*_*evC 5 memory-leaks program-entry-point ios

我第一次使用乐器,并且在main.m中看起来有一个内存链接.如何解决问题以解决问题?我使用ARC所以令我惊讶的是主要的错误?有什么可能导致这个?

在此输入图像描述

zap*_*aph 5

泄漏是在后代main.

观看使用仪器泄漏的WWDC视频是明智之举,您可以获得更多有关您所展示内容的信息.

泄漏显示泄漏的内存分配的位置,泄漏是因为缺少释放因此无法显示,所以缺少.

使用ARC时的一个常见原因是保留周期.也许委托财产强而不是导致保留周期.例如:Object-A实例化Object-B.Object-B实例化具有强属性的Object-C.Object-C创建一个指向Object-B的强属性委托.Object-A释放Object-B但Object-B无法解除分配,因为Object-C仍然有一个强指针.Object-C无法解除分配,因为Object-B仍然有一个强大的指针.在这一点上,每个都使另一个人不能解除分配 - 一个保留周期.答案是Object-C应该对Object-B有一个弱点.

你的任务是向下钻取并找到泄漏的物体,然后弄清楚它为什么没有被释放.这很多次都很难.

  • 不同的问题.如果不随使用情况增长,可能会接受一个或几个小泄漏.请记住,您的应用程序可能会长时间保持活动而不会重新启动,因为它会在后台保持活动状态.但最好消除所有泄漏,它们都是编程错误.最后,运行分析仪并修复所有警告. (2认同)