标签:
ARC(Automatic Reference Counting)是自动引用计数管理机制,但是它有别于GC,是一种静态的分析工具。
ARC会自动在适当的地方插入retain/release的代码,以前需要手动管理内存的地方可以直接用arc来代替了。
ARC的释放位置:如果是在方法里面,直接在方法的末尾release掉,如果是类变量,在delloc里面释放掉。
ARC使用前端编译器实现自动插入内存管理的代码,使用优化器优化多个release和retain的代码。
该机能在 iOS 5/ Mac OS X 10.7 开始导入,利用 Xcode4.2 可以使用该机能。简单地理解ARC,就是通过指定的语法,让编译器(LLVM 3.0)在编译代码时,自动生成实例的引用计数管理部分代码。有一点,ARC并不是GC,它只是一种代码静态分析(Static Analyzer)工具。
使用ARC的好处:
以后写代码简单多了,不用担心烦人的内存问题,以及内存泄露的问题。
代码总量变少了,看起来清爽了不少。
代码高速化,减少了低效代码的可能性。
使用ARC要注意的地方:
1.使用强引用和弱引用,强引用就是拥有了某个对象,弱引用并不拥有这个对象,当强引用指针释放了的时候,弱引用自动被释放。
2.如果要强行释放掉对象可以用置nil的方法。
3.代码中不允许出现retain,release,autorelease等。
4.delloc中不能出现【super delloc】
5.不能使用new开头的属性名称。
标签:
原文地址:http://www.cnblogs.com/guchengfengyun/p/4602217.html