为什么不用__block 是因为通过引用来访问self的实例变量 ,self被retain,block也是一个强引用,引起循环引用,用__week是弱引用,当self释放时,weakSelf已经等于nil。
Blocks可以访问局部变量,但是不能修改,如果修改局部变量,需要加__block
__weak typeof(self) weakSelf = self;
为什么不用__block 是因为通过引用来访问self的实例变量 ,self被retain,block也是一个强引用,引起循环引用,用__week是弱引用,当self释放时,weakSelf已经等于nil。
Blocks可以访问局部变量,但是不能修改,如果修改局部变量,需要加__block
__weak typeof(self) weakSelf = self;
本文标题:关于Block的循环引用
本文链接:https://www.haomeiwen.com/subject/wtrosttx.html
网友评论