【发布时间】:2012-12-30 00:27:52
【问题描述】:
我刚刚开始使用 Objective-C 和 iOS 开发。似乎自动引用计数 (ARC) 现在(并且已经有一段时间)是处理 OSX 和 iOS 开发的内存管理的首选方式。
此时学习手动保留/释放 (MRR) 有什么好处?跳过 MRR 直接转到 ARC 有什么好处?
我目前的经验几乎完全是垃圾收集语言,包括 AS3、Java 和 JavaScript。我有兴趣了解有关内存管理的更多信息,但由于 ARC 实际上禁止使用 retain、release、autorelease、retainCount 和 dealloc,因此我不愿意编写使用这些的代码。
我也没有预见到我未来会转向低级编程,所以如果跳过 MRR 意味着我仍然不了解内存管理最佳实践,这些实践最终可能不会对我产生重大影响。
【问题讨论】:
-
即使您不使用保留、释放等。了解幕后发生的事情也很有帮助。我无法告诉您人们在 SO 上发布问题的次数,答案是该对象超出了范围。
标签: objective-c ios memory-management automatic-ref-counting