我应该在objective-c中使用ARC吗?

Jac*_*mes 10 cocoa objective-c automatic-ref-counting

查看OS 10.7的发行说明,有一些关于使用自动引用计数(ARC)来简化内存管理的内容.我即将开始一个新的Cocoa项目,并想知道是否值得使用该模型(我理解它的方式,你不能在使用ARC和不使用它之间混合)?

这种困境似乎是使用了一些新的东西,而不是使用可能在以后节省大量调试时间的东西.那是这样的吗?有没有人玩过它,发现没有现实世界的好处?

Fre*_*eer 14

毫无疑问,你应该使用ARC.ARC会在最合适的时间注入保留释放调用,因此实际上您可能会看到平均内存使用量低于不使用ARC时的平均内存使用量.

我使用过ARC,它非常强大.你停止随机崩溃,你的应用程序感觉更敏感.正如他们在WWDC上所说,没有理由不使用自动参考计数.

此外,您可以在与ARC文件相同的项目中使用非ARC文件.

  • @mjisrawi:ARC可以通过iOS 4.0运行.事实上,Apple推出的WWDC应用程序是第一个使用ARC的iOS应用程序. (3认同)
  • @FreeAsInBeer - 我并不反对,但是我收到来自文档和邮件列表的混合信息 - 我不清楚每个人都应该将所有内容直接转换为ARC(我并不是说'我已经决定了',我真的想知道这是不是情况.经过15年的饮食 - 睡眠Objective-C,你不会因为内存管理错误而导致"随机崩溃".它真的能让应用程序更具响应性吗?你的意思是你可以通过打开菜单,点击按钮来区分ARC应用程序和无弧应用程序之间的区别? (2认同)

Enc*_*ada 5

我同意FreeAsInBeer关于使用ARC的观点.然而,也应当明确的是垃圾回收(GC)应被使用.看起来苹果今后将集中精力ARC,同时让GC慢慢死亡.这很棒,因为ARC显然是一种非常优越的技术,而GC则是缓慢而极端的错误.

是的 使用ARC.远离GC.