Planificador de subprocesos de fondo único RxJava

Soy bastante nuevo en RxJava, por lo que esta es probablemente una pregunta tonta. Voy a describir mi escenario.

Tengo un código que se ejecuta en el subproceso de la interfaz de usuario que actualizará algunas imágenes, pero esas imágenes no son muy importantes y consumen un poco de recursos al generarlas, por lo que quiero generarlas en un solo subproceso (no el subproceso de la interfaz de usuario, por supuesto) y generarlos uno por uno. Supongo que el planificador de trampolín es lo que quiero, pero mi problema es que si lo uso, funciona en el hilo de la interfaz de usuario y quiero que lo haga en otro hilo.

Obviamente, puedo escribir mi propio hilo en el que puedo poner en cola los elementos y luego los procesa uno por uno, pero pensé que quizás RxJava tendría una solución simple para mí.

Mi código actual se ve así:

Observable<Bitmap> getImage = Observable.create(new Observable.OnSubscribe<Bitmap>() {
    @Override public void call(Subscriber<? super Bitmap> subscriber) {
        Log.w(TAG,"On ui thread? "+ UIUtils.isRunningOnUIThread());
        subscriber.onNext(doComplexTaskToGetImage());
        subscriber.onCompleted();
    }
});

getImage.subscribeOn(Schedulers.trampoline()).subscribe(new Action1<Bitmap>() {
    @Override public void call(Bitmap bitmap) {
        codeToSetTheBitmap(bitmap);
    }
});

Mi registro que dice "¿En el hilo ui?" Siempre tiene verdad. Entonces, ¿cómo hago para que ese código y todos los intentos posteriores de hacer lo mismo se ejecuten en un solo subproceso (no el subproceso ui) en orden sin escribir un montón de código para poner en cola ese trabajo?

Editar:

Creo que esto ahora se puede lograr usandoSchedulers.single() o si quieres el tuyo puedes usarnew SingleScheduler(). Todavía estoy probando, pero creo que hace lo que quería cuando publiqué esto.

Respuestas a la pregunta(2)

Su respuesta a la pregunta