2013-01-03 115 views
5

下午好,很怪内存泄漏ARC

我在做我的iOS应用程序,我将要释放一些仪器的测试,但我注意到一些非常内存泄漏,这似乎是未来来自系统库。

当我跑仪器我得到这个泄漏: enter image description here

这是从我的角度来看非常怪异!我去了这些泄漏的调用树,他们都似乎是深刻的C++系统调用。

enter image description here

什么混淆我更是,这个项目已经启用ARC,我跑了它通过分析仪和没有问题出现了。 更奇怪的是,这不会发生在模拟器上,也不会发生在我的真实iPad上,但在我的iPhone上会发生这个问题。

当我检查“仅显示Obj-C”和“隐藏系统库”时,调用跟踪消失,这导致我相信我的代码不负责泄漏。

为什么会发生这种情况,我该如何解决这个问题?

谢谢你们。

+5

我会让你失望的是:Apple的代码不是无bug的。实际上,C++标准库中可能会有内存泄漏。 – 2013-01-03 18:15:42

+0

感谢您的帮助!但有一点我仍然困惑的是,如果是这种情况(苹果的代码有内存泄漏),这不会出现在iPad Instruments运行? – Alejandro

+1

我不会殴打自己了。就像@ H2CO3所说的,苹果的图书馆并不完美。这不会是第一次在其中一个库中发现内存泄漏。实际上它发生了很多。 –

回答

5

上面的泄漏不是你的应用程序内部的泄漏,它在苹果的库里面,你不必担心。如果你已经修复了你的应用程序中的所有泄漏,那么你很好。仅仅因为这个小漏洞,苹果公司才会拒绝你的应用程序。

+1

感谢您的信息! – Alejandro