美文网首页
Rxswift和RxCocoa中何时使用unowned和weak

Rxswift和RxCocoa中何时使用unowned和weak

作者: 92f5323404c8 | 来源:发表于2018-05-31 14:46 被阅读0次

    使用RxCocoa有时很难区分什么时候使用weak,什么时候使用unowned。当一个闭包执行时其中的self引用的对象有可能已经被释放掉时,我们会使用weak,所以将self声明为可选类型。当我们知道某个闭包执行时我们确定self引用的对象不会被释放掉,我们使用unowned,否则将会导致崩溃
    在RxSwift中,特别是在RxCocoa中,选择关键字需遵从下列原则:

    • noting:在单例或者绝对不会被释放掉的视图控制器中使用(如根控制器)
    • unowned:在确认闭包执行完成之后视图控制器才会被释放时使用
    • weak:其余情况
      参考资料: RxSwift - By Raywenderlich

    相关文章

      网友评论

          本文标题:Rxswift和RxCocoa中何时使用unowned和weak

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