当前位置: 代码迷 >> Iphone >> ARC-循环引用-解决方法
  详细解决方案

ARC-循环引用-解决方法

热度:288   发布时间:2016-04-25 05:36:35.0
ARC-循环引用-解决办法

一,循环引用最常见的代码类型。

 

复制代码
- (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开发时阶》 -唐巧

  相关解决方案