最近准备用RAC来写项目,在学习中发现RAC中经常会循环引用,RAC中的@Weakify非常好用,介绍给大家。
这里主要介绍在Block中的循环引用
1.之前处理Block的方法:
之前我们对待Block最好的方法就是每一个Block里面都加一个weakself。
2.在RAC对待Block的方法
在RAC中只需要在前面加一个@weakify(self);在引用到self的时候改写成self_weak_就可以了。
当然还有更简单的方法,那就是weakify(self)和strongify(self)一起使用,一劳永逸。所有用到self的地方不用再替换成self_weak_。
3.最后提醒
RAC的Block中切记不要用self,保证会导致循环引用。切记切记切记,像下面这个例子是一定会引起循环引用的。