あなたは(解除)をキャンセルするために、間隔演算子をtakeUntil()
演算子を使用することができ、takeUntil()
は、入力としてObservable
を受け取り、入力Observable
アイテムを放出するときにキャンセル。それが残っているもの
はそのonComplete()
でアイテムを発するObservable
に熱いObservable
を変換することですので、我々はtakeUntil()
への入力としてそれを使用することができ、これは各Observable
イベントのNotification
オブジェクトを発するmaterialize()
オペレータを、(使用可能ですonNext()
,onError()
,onCompleted()
)とfilter()
との組み合わせで、onCompleted()
イベントのみを取る。
Observable<Notification<Object>> hotOnCompleteObservable =
hot.materialize()
.filter(notification -> notification.isOnCompleted());
Observable interval = ...
interval.takeUntil(hotOnCompleteObservable);
コードを表示してください – shmakova