1
RxJava 2の演算子 "doAfterTerminate"と "doFinally"の違いは誰にも分かりますか?doAfterTerminateとdoFinallyの相違点
RxJava 2の演算子 "doAfterTerminate"と "doFinally"の違いは誰にも分かりますか?doAfterTerminateとdoFinallyの相違点
差が下流キャンセルが/で正規onError
又はonComplete
終了パスに加えて配列を配置した場合doFinally
が設けAction
を実行することです。これにより、3つの手段によるリソースのクリーンアップと解放が可能になります。また、オペレータは、onError
またはonComplete
信号がキャンセルと競合した場合でも、サブスクリプションごとにアクションが1回だけ実行されることを保証します。対照的に、doAfterTerminate
は、onError
およびonComplete
をカバーするだけである。
をdoAfterTerminate
+ doOnCancel
にエミュレートできますが、操作が分割されているため、アクションパラメータが両方実行され、非冪等のクリーンアップロジックに問題が発生する可能性があります。
JavaDoc [doAfterTerminat](http://reactivex.io/RxJava/2.x/javadoc/io/reactivex/Observable.html#doAfterTerminate-io.reactivex.functions.Action-)と[doFinally](http://reactivex.io/RxJava/2.x/javadoc/io/reactivex/Observable.html#doFinally-io.reactivex.functions.Action-)? – akarnokd
ありがとう! 私は[docs here](http://reactivex.io/documentation/operators)を見ましたが、あなたのリンクでは見ていません –