kku*_*rni 7 garbage-collection objective-c ios automatic-ref-counting
只是想知道是否有人知道Objective C 2.0垃圾收集器和IOS 5 SDK中的新自动参考计数器有什么不同?
IOS 5 SDK也使用Objective C 2.0吗?
注意:我的意思是客观的C 2.0 - 我从这个链接http://theocacao.com/document.page/510看到了
谢谢
jus*_*tin 13
只是想知道是否有人知道Objective C 2.0垃圾收集器和IOS 5 SDK中的新自动参考计数器有什么不同?
ARC不是垃圾收集器.最好将其视为由编译器添加的手动引用计数(保留/释放/自动释放)调用.它还使用了一些运行时技巧.
如果您对Apple系统上的ObjC完全不熟悉:所有Apple的Objective-C类型都使用引用计数,但现在有多种变体.在ARC之前和GC之前,我们使用的都是手动参考计数(MRC).使用MRC,您将明确保留和释放您的对象.MRC对某些人来说很难,特别是那些花很少时间明确管理记忆的人.因此,对更简单系统的需求随着时间的推移而增长.MRC程序还要求您编写大量的内存管理代码,这可能会变得乏味.
见布拉德的出色答卷这里的一些更多的细节.
IOS 5 SDK也使用Objective C 2.0吗?
是的,但是 ObjC垃圾收集器不是iOS上的选项.
注意:iOS上没有垃圾收集功能,但根据我的评论,ARC可在Mac OSX 10.6+上使用.然而,差异仍然具有可比性.
使用自动引用计数,一旦超出范围,对象仍然会被释放.
使用垃圾收集,对象可以保留在内存中,直到垃圾收集器执行下一次扫描并找到不再具有引用的对象.
| 归档时间: |
|
| 查看次数: |
7138 次 |
| 最近记录: |