RxJava teilt die Emissionen eines Observable auf mehrere Abonnenten

Ich habe das folgende Problem:

Ich habe ein Observable, das einige Arbeiten ausführt, aber andere Observables benötigen die Ausgabe dieses Observable, um zu funktionieren. Ich habe mehrmals versucht, dasselbe Observable zu abonnieren, aber im Protokoll sehe ich, dass das ursprüngliche Observable mehrmals initiiert wird.

das ist meine beobachtbare das ist das Objekt erstellen:

Observable.create((Observable.OnSubscribe<Api>) subscriber -> {
            if (mApi == null) {
                //do some work
            }
            subscriber.onNext(mApi);
            subscriber.unsubscribe();
        })

das ist meine beobachtbare, die das Objekt benötigt

loadApi().flatMap(api -> api....()));

Ich benutz

.subscribeOn(Schedulers.io()) observable.observeOn(AndroidSchedulers.mainThread())
                .unsubscribeOn(Schedulers.io()

auf allen Observablen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage