Angenommen, ich den folgenden Code haben:Warum retryWhen() nicht halten?
Observable.error(new Throwable()).
retryWhen(notificationHandler -> Observable.never()).
subscribe(x -> {}, t -> log("error"),() -> log("completed"));
erwarte ich, dass sie die Ausführung halten wird, weil retryWhen
wird nie oder getan resubscribe.
Aber wenn ich es ausführe, stoppt die Anwendung, auch nicht Fehler oder konkurriert.
Warum hält es nicht immer?
P.S. Ich hatte die Idee, diese Ausführung zu unterbrechen, weil alles auf einem einzigen Thread läuft. Und versuchte Bewegung retryWhen() -Prozedur zu einem anderen Thread:
Observable.error(new Throwable()).
retryWhen(notificationHandler -> Observable.create(subscriber -> {
log("never");
}).observeOn(Schedulers.newThread())).
subscribe(x -> {}, t -> log("err"),() -> log("completed"));
Aber es does'not Hilfe - noch druckt 'nie' und stoppt.
Könnten Sie bitte erklären, was Sie tun möchten? Welche Art von Verhalten möchten Sie implementieren? Welche Art von Bewerbung hast du? Ist es eine Android-Anwendung? –