Dar*_*asi 3 android rx-android rx-java2
当在后台使用而不是在 Activity/Fragment 中使用时,如何在 RxJava2 中处理单个观察者。
我知道如果在 Activity/Fragment 中使用 Single,则可以将其添加到复合处置器中,并在 Activity/Fragment 的 onDestroy 方法中对其进行处置。
但是当从其他地方调用它时如何处理它呢?
另外,如果从 Activity/Fragment 调用 Single,并且我们想在调用 onDestroy 之前处置它,还有哪些其他方法来处置 Single?
当您处置自己和时返回的两个默认观察者 (ConsumerSingleObserver和) 。如果您传入自己的自定义,则需要决定何时处理它。BiConsumerSingleObserverSinglesubscribeonErroronSuccessSingleObserver
Single 只会调用其中一个方法,并且只会调用一次。调用任一方法后,Single 就会终止,对其的订阅也会结束。(http://reactivex.io/documentation/single.html)
SingleObserver在某些情况下,您可能希望在 自行处置之前处置,在这种情况下,您只需要调用disposeaDisposable返回的subscribe。何时何地调用它实际上取决于您的具体情况。
如果Single在生命周期对象被销毁(例如 HTTP 调用)之前未完成,则必须在生命周期对象的销毁回调中处置观察者。
| 归档时间: |
|
| 查看次数: |
2540 次 |
| 最近记录: |