RxJava允许多个onError调用

Num*_*617 3 java android rx-java

我试图在下一次和错误调用时允许无限的流.

下面的代码使用了retry()我假设允许我看到所有3个调用的方法onNext但是在错误之后没有其他任何调用.

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);
    }
}
Run Code Online (Sandbox Code Playgroud)

我理想的用例允许我订阅并对所有错误以及主题/可观察的所有下一个调用采取行动.

我也尝试使用Operator如此处所示的自定义实现解决方案,但我也没有运气.

是否有可能实现我要做的事情,或者RxJava的onError设计是否会破坏链条完全阻止这个想法.

Nei*_*ige 7

正如在这个线程(Rxjava讨论)中提到的,这是不可能的.

如果错误不应终止流,则通过OnNext将错误包装到消息中.