美文网首页
Block的强引用

Block的强引用

作者: zhouluyao | 来源:发表于2019-04-29 11:17 被阅读0次
  1. @weakify(self),@strongify(self)在Block中配合使用才有效,目的是让block不对self进行强引用

  2. 里面@strongify(self)相当于,生成了一个变量名为self的局部变量并指向了weakSelf,

  3. 在block内部@strongify(self)之前不能使用self,否则block依然会对self进行强引用

  4. 正常情况下,block会对代码块里面的非全局对象进行强引用

     @weakify(self) 配合  @strongify(self)使用不等同与下面2句
     
    __weak typeof (self) weakSelf = self;
    __strong typeof (self) strongSelf = weakSelf;
    ,只相当于 __weak typeof (self) weakSelf = self;
    
    如果self销毁就不往下执行代码时可以用__weak typeof (self) weakSelf = self;或者@weakify(self) 配合  @strongify(self)使用

相关文章

网友评论

      本文标题:Block的强引用

      本文链接:https://www.haomeiwen.com/subject/cvaenqtx.html