RxJava- Durchlaufen Sie asynchrone Aufgaben und warten Sie, bis sie abgeschlossen sind
Frage
Ich versuche, asynchrone Arbeiten durchzuführen n
elemente und warten Sie, bis alle Elemente abgeschlossen sind, bevor Sie fortfahren.
Was lege ich in die whatfunc?
ort, an dem das Abonnement einmal vollständig ausgelöst werden soll?
Observable.range(0, n)
.<whatfunc?>({ s -> doAsyncWorkThatReturnsObservable(s) })
.(other?)
.subscribe({println "All complete"})
Danke
Lösung
Stellen Sie sicher, dass Sie die richtigen Argumente in subscribe schließen.Beispiel aus dem Link angepasst an Ihr bereitgestelltes Beispiel:
Observable.range(0, n)
.flatMap({n -> doAsyncWorkThatReturnsObservable(n)})
.subscribe(
{ println(it); }, // onNext
{ println("Error: " + it.getMessage()); }, // onError
{ println("Sequence complete"); } // onCompleted
);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow