ObjC:当没有人引用它时,它是立即发布的对象吗?

时间:2015-09-16 07:07:32

标签: ios objective-c memory-management uiviewcontroller

我遇到的问题是视图控制器被解散但未被引用但仍在内存中,只是想知道当没有人引用时,内存中实际释放的对象是什么时候?

我以前测试的方式是我从Facebook安装了PVC工具并使用它在视图控制器出现时打印出视图层次结构,在它被解除后,我确保没有人引用它并暂停执行所以我可以po来自之前的PVC工具的视图控制器的内存地址,但我仍然可以在那里看到视图控制器实例。

谢谢!

1 个答案:

答案 0 :(得分:2)

您似乎对已发布并从内存中已清除感到困惑。当类被销毁时,它占用的内存不会归零,就像删除文件系统中的文件一样,磁盘块也不会归零。

这只会占用太多时间而且收效甚微。

被释放只是意味着现在可以重复使用该类占用的内存。

查看类是否已被销毁的一种方法是在<div class="table_style"> <table border="true"> <tr> <th>Student Name</th> <th>Marks in Science</th> </tr> <tr> <td>Janet</td> <td>85.00</td> </tr> <tr> <td>David</td> <td>92.00</td> </tr> <tr> <td>Arthur</td> <td>79.00</td> </tr> <tr> <td>Bill</td> <td>82.00</td> </tr> </table> </div>方法中添加日志:

dealloc