看一下OS 10.7的发布说明,有一些关于使用自动引用计数(ARC)来简化内存管理的内容。我即将开始一个新的Cocoa项目,并想知道是否值得使用这个模型(据我了解,您不能混合使用ARC和不使用ARC)。
两难的问题似乎是使用新东西还是使用可能会节省大量调试时间的东西。但情况真的是这样吗?有人尝试过使用它并没有发现实际的益处吗?
看一下OS 10.7的发布说明,有一些关于使用自动引用计数(ARC)来简化内存管理的内容。我即将开始一个新的Cocoa项目,并想知道是否值得使用这个模型(据我了解,您不能混合使用ARC和不使用ARC)。
两难的问题似乎是使用新东西还是使用可能会节省大量调试时间的东西。但情况真的是这样吗?有人尝试过使用它并没有发现实际的益处吗?
毫无疑问地,你应该使用ARC。ARC会在最合适的时候注入retain release调用,因此实际上您可能会看到比不使用ARC更低的平均内存使用率。
我使用过ARC,它非常强大。您将停止遇到随机崩溃,您的应用程序也会感觉更加响应。正如他们在WWDC上所说,没有理由不使用自动引用计数。
此外,您可以在与ARC文件相同的项目中使用非ARC文件。
我同意FreeAsInBeer关于使用ARC的观点。然而,不应该使用垃圾回收(GC)。看起来苹果将把重点放在ARC上,让GC慢慢消亡。这很好,因为ARC显然是一种更优秀的技术,而GC很慢且极其容易出错。
所以,是的,请使用ARC。远离GC。