4
例如:在RxSwift驅動程序中使用[unowned self]是否安全?
tapGestureRecognizer.rx.event.asDriver()
.drive(onNext: { [unowned self] _ in
self.view.endEditing(true)
})
.disposed(by: disposeBag)
因爲disposeBag
由自控,我會假設是嗎?
你能解釋一下爲什麼嗎? – Szu
因爲當自己指向的對象將被取消引用時,這是對象被釋放的時間點,因此它的'disposeBag'屬性被釋放。當'disposeBag'被釋放時,其所有一次性用品將被刪除,這意味着它的所有訂閱都被取消訂閱。因此'drive(onNext:)'訂閱的生命週期與'self'的生命週期相關聯。這意味着關閉不會在崩潰的情況下執行。 – ctietze