【读书笔记】ARC-循环引用-解决办法
2015-07-20 22:01
363 查看
一,循环引用最常见的代码类型。
二,循环引用的解决办法。
1,程序员手动断开一个环,停止循环引用。
2,弱引用。因为弱引用持有对象,但不增加引用计数。可以避免循环引用的产生。
三,弱引用避免循环引用的常见例子。
有两个ViewController,这两个ViewController之间需要互相传数据。这时候,ViewController的delegate成员变量通常是一个弱引用。目的是为了避免两个ViewController之间循环引用。
参考资料:《iOS开发时阶》 -唐巧
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. NSMutableArray *firstArray=[[NSMutableArray alloc]init]; NSMutableArray *secondArray=[[NSMutableArray alloc]init]; [firstArray addObject:secondArray]; [secondArray addObject:firstArray]; }
二,循环引用的解决办法。
1,程序员手动断开一个环,停止循环引用。
2,弱引用。因为弱引用持有对象,但不增加引用计数。可以避免循环引用的产生。
三,弱引用避免循环引用的常见例子。
有两个ViewController,这两个ViewController之间需要互相传数据。这时候,ViewController的delegate成员变量通常是一个弱引用。目的是为了避免两个ViewController之间循环引用。
参考资料:《iOS开发时阶》 -唐巧
相关文章推荐
- leetcode 日经贴,Cpp code -Sliding Window Maximum
- Qt MVC学习 模型子类化参考(二)
- Linux设置系统语言
- Java回调函数的理解
- testng进行单元测试时报错Software caused connection abort: socket write error解决方法
- 1 Angular2 Set up
- android fragment学习总结
- Eclipse缺少字体解决办法
- hdu 1266 Reverse Number
- iOS:App启动过程详解
- 触摸控(触摸与移动 Touch & Mobility)的官方教程
- POJ3620
- extern "C"
- linux学习笔记1
- Hadoop+HBase+ZooKeeper分布式集群环境搭建
- Android混淆之ProGuard
- Hadoop+HBase+ZooKeeper分布式集群环境搭建
- HTML基础标签
- 一步一步学习多线程编程之线程同步通信
- 【MFC-5】VS2010编程之文件对话框