2012-01-04 16 views
2

我听说在某些情况下开发人员仍然需要知道基本的内存管理规则。那么当关于ARC的知识不足以开发iOS应用时呢?在哪些情况下我们不能简单地依靠自动引用计数?

(我知道MEM管理基础知识,但朋友不和想开始开发)。

+0

的[什么样的泄漏确实Objective-C中的自动引用计数(在Xcode 4.2)不能防止/最小化?]可能重复(http://stackoverflow.com/questions/6260256/what-kind -of-泄漏-确实目标-CS-自动引用计数功能于xcode中-4-2) – 2012-01-04 15:18:19

回答

2

我想了解什么是引擎盖下的事情总是有用的,尤其是在这样的情况下,ARC使用命名惯例,使一切工作正常。

但直接回答你的问题:它不能处理自动保留周期,而且只使用对象,所以如果你使用任何的CoreFoundation方法你还是会担心内存管理。

另外,如果你使用任何第三方或开源库,然后他们可能不兼容ARC(尽管你可以混合ARC和一个可执行非ARC代码)。

0

dontWatchMyProfileless,

TL;博士:告诉你的朋友只使用ARC,其余的会自行解决。

朗形式:

我教开始的iOS编程在我当地的社区学院。我提出这并不是因为我是ARC的专家,而是我教过初学者现代化的Objective-C。

真正的问题是,当应在专业的iOS程序员学会所有iOS的内存管理的复杂性呢?

在我2011年秋季班,我能够让学生忽略大多数学期内存管理问题。随着学生开始使用基于C的API - Core Graphics,GCD等,需要时它才会出现。当学生必须开始__bridge铸造时,我会介绍它。

ARC真的帮助学生学习Cocoa Touch。内存管理作为一项高级功能而出现,现在就是这样。特别是,我喜欢在&上关闭ARC以显示人员内存泄漏。

现在,去让你的朋友编码。

安德鲁

相关问题