如果我们使用NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];然后使用什么方法,排除或释放iOS。
答案 0 :(得分:2)
iOS上没有垃圾回收。
我在documentation中做了苹果建议的事情:
在垃圾收集环境中, 发布是无操作,所以除非你这样做 不想给收藏家一个提示 重要的是在任何地方使用排水管 代码,可以编译为 垃圾收集环境。
答案 1 :(得分:0)
在iOS上,NSAutoreleasePool会在超出定义范围时消耗掉(只要没有其他引用)。在排水期间,它将释放它所持有的所有物体。
因此,调用release可能会导致流失,只要它是对池的最后一次引用。
这与传统的GC不同,后者的收集器不受范围约束,并且通常独立于主应用程序代码流而工作。