[英]RxJava allow multiple onError calls
我試圖在下一次和錯誤調用時允許無限的流。
下面的代碼使用了retry()
方法,我假設該方法允許我查看對onNext
所有3個調用,但是在錯誤之后沒有其他任何調用。
public class TesterClass {
public static void main(final String[] args) {
final PublishSubject<Void> publishSubject = PublishSubject.create();
publishSubject
.retry()
.subscribe(
aVoid -> System.out.println("onNext"),
Throwable::printStackTrace,
() -> System.out.println("onComplete")
);
publishSubject.onNext(null);
publishSubject.onNext(null);
publishSubject.onError(new Exception("onError"));
publishSubject.onNext(null);
}
}
我理想的用例允許我訂閱並對所有錯誤以及主題/可觀察的所有下一個調用采取行動。
我也試圖使用如此處所示的自定義Operator
來實現解決方案,但我也沒有運氣。
是否有可能實現我要做的事情,或者RxJava的onError設計是否會破壞鏈條完全阻止這個想法。
正如在這個線程中所提到的( Rxjava討論 ),這是無法做到的。
如果錯誤不應終止流,則通過OnNext將錯誤包裝到消息中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.