block循环饮用解决

在block中使用self会引起循环引用导致无法释放。

解决:

__weak typeof(self) weakSelf = self;

例如:

NSLog(@"init--> value:%@,address=%p,self=%p",self.person,self.person,self);
 
myBlock1 = ^(void){
    //这样不会造成循环引用
    NSLog(@"execute1--> value:%@,address=%p,weakSelf=%p",weakSelf.person,weakSelf.person,weakSelf);
};

不要在block中直接使用self,要先将self变为弱饮用。

上一篇:用idea+maven编译打包spark project core错误:java.lang.RuntimeException: Unable to load a Suite class


下一篇:混合开发使用Chrome Inspect调试WebView预览手机界面和定位元素