Warum wird mein Timer Observable nie aufgerufen?

uf Android habe ich ein @ geschriebObservable sollte nach 2000 ms einmal aufgerufen werden, wird aber nie aufgerufen.

    Observable.timer(2000, TimeUnit.MILLISECONDS) // wait 2000 msec
            .subscribeOn(Schedulers.newThread()).observeOn(AndroidSchedulers.mainThread())
            .flatMap(new Func1<Long, Observable<?>>() {

        @Override public Observable<?> call(Long aLong) {
            continuePlayback(); // this line is never called
            return null;
        }

    });

Ich will dasObservable um den Haupt-Thread abzuwarten, dann rufe @ acontinuePlayback() auf dem Hauptthread. Kontexthilfe erlaubte mir, @ zu platziersubscribeOn/observeOn zwischen dentimer undflatMap. Ist das richtig? Was ist hier wirklich los und was habe ich falsch gemacht?

Was passiert mit demObservable nach dem anruf? Wird es am Leben bleiben oder muss ich es explizit irgendwie abreißen, z. AnrufOnCompleted()?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage