最新的iphone OS中有GC吗?

时间:2011-03-22 09:21:35

标签: iphone garbage-collection autorelease

如果我们使用NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];然后使用什么方法,排除或释放iOS。

2 个答案:

答案 0 :(得分:2)

iOS上没有垃圾回收。

我在documentation中做了苹果建议的事情:

  

在垃圾收集环境中,   发布是无操作,所以除非你这样做   不想给收藏家一个提示   重要的是在任何地方使用排水管   代码,可以编译为   垃圾收集环境。

答案 1 :(得分:0)

在iOS上,NSAutoreleasePool会在超出定义范围时消耗掉(只要没有其他引用)。在排水期间,它将释放它所持有的所有物体。

因此,调用release可能会导致流失,只要它是对池的最后一次引用。

这与传统的GC不同,后者的收集器不受范围约束,并且通常独立于主应用程序代码流而工作。