Was ist der Unterschied zwischen Immediate scheduler
verwenden und nicht verwenden?Unterschied zwischen der Verwendung von Immediate Scheduler und keine Verwendung von Scheduler überhaupt
Observable.create(subscriber -> subscriber.onNext(new Object())).subscribeOn(Schedulers.immediate()).subscribe();
//vs
Observable.create(subscriber -> subscriber.onNext(new Object())).subscribe();
Immediate Scheduler verwendet SleepingAction
und führt es sofort:
this.schedule(new SleepingAction(action, this, execTime));
Aber es scheint, es ist eigentlich nicht sofort, es ist möglich, Verzögerung:
long delay = this.execTime - this.innerScheduler.now();
Thread.sleep(delay);
So bin ich richtig, dass Unterschied zwischen mit Immediate scheduler
und nicht mit Scheduler überhaupt ist in möglichen Verzögerung?
Es ist besser, 'Schedulers.trampoline()' für Komponententests zu verwenden. Aufgrund des Blockieren-Schlafes in Sofort gibt es einen Plan, es vollständig von 2.x fallen zu lassen. Quelle: https://github.com/ReactiveX/RxJava/wiki/What-different-in-2.0-(draft) – LordRaydenMK
'trampoline()' verwendet auch blocking sleeps, aber sein Vorteil gegenüber 'sofort 'ist, dass Sie rekursiv planen können damit. –