引用计数等于0的对象仍然是持久的

Lol*_*z89 1 memory-leaks reference-counting objective-c instruments ios

我正在尝试增强非ARC应用程序中的内存分配.有些对象即使引用计数为0,也会在两个快照之间列为持久对象.

这是我的快照视图: 在此输入图像描述

让我们在第一个快照(0x6deb180)中选择所选的LSBookChapter.这是该对象的历史:

在此输入图像描述

为什么该对象没有被释放?如果引用计数为0,我无法弄清楚当我保留该对象时..

bbu*_*bum 6

你可以打开僵尸检测吗?

僵尸检测不会释放任何内容,但是 - 可能 - 保留计数将降至零,更有用的是,您将看到保留导致和释放导致事件之间的一对一对应关系.


此外,如果您没有启用"仅跟踪实时分配",那么在解除分配后,您将看到Instruments中的对象,保留计数为0,但实际上已取消分配.