Im documentation for RetryWhen Beispiel gibt es so geht:Fangfehler, wenn retryWhen: s Wiederholungen abläuft
Observable.create((Subscriber<? super String> s) -> {
System.out.println("subscribing");
s.onError(new RuntimeException("always fails"));
}).retryWhen(attempts -> {
return attempts.zipWith(Observable.range(1, 3), (n, i) -> i).flatMap(i -> {
System.out.println("delay retry by " + i + " second(s)");
return Observable.timer(i, TimeUnit.SECONDS);
});
}).toBlocking().forEach(System.out::println);
Aber wie propagieren ich den Fehler, wenn die Wiederholungen abläuft?
Hinzufügen .doOnError(System.out::println)
nach die retryWhen
Klausel nicht den Fehler abfangen. Wird es überhaupt emittiert?
Hinzufügen eines .doOnError(System.out::println)
vor retryWenn always fails
für alle Wiederholungen angezeigt wird.
Um, warum die down-vote? Dies ist eine Einheit getestet Bibliothek. –