ARC能够解决iOS开发中绝大部分的内存管理问题,但是还有一小部分需要开发者自己处理:与底层Core Foundation对象交互的那部分,该部分不在ARC管理之下,故需要自己维护:
两个方法CFRetain和CFRelease
关键字:
__bridge:只做类型转换,不修改引用计数,需要调用CFRelease方法
__bridge_retained:转换类型,并增加引用计数,需要调用CFRelease方法
__bridge_transfer:转换类型,引用计数管理转交给ARC,无需调用CFRelease方法
使用弱引用解决循环引用问题,关键字weak
网友评论