美文网首页
Block循环引用

Block循环引用

作者: 牛程程 | 来源:发表于2017-07-12 22:14 被阅读0次

    Block的循环引用

      如果在Block中使用_strong修饰符的对象类型自动变量,当block从栈复制到堆时,该对象为Block所持有。这样就容易引起循环引用。

    为了避免循环引用可以使用_block变量、_weak修饰符以及_unsafe_unretained修饰符。 

    _block和_weak的区别:

    1._block可以修饰对象,也可以修饰基本类型。

    2._weak只可以修饰对象。

    3._block在block中可以被重新赋值,_weak不可以。

    _unsafe_unretained不会被自动置空为nil。

    相关文章

      网友评论

          本文标题:Block循环引用

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