These are chat archives for ReactiveX/RxJava

Jan 2018
Mark Galea
Jan 06 2018 00:31
This message was deleted
This message was deleted

Ah gotcha! So the main queue is only responsible for scalars from the following line:

if (t instanceof ScalarSynchronousObservable) {
                tryEmit(((ScalarSynchronousObservable<? extends T>)t).get());

Each inner will have its own queue and not use the main. @akarnokd ?

Mark Galea
Jan 06 2018 00:37
Why are scalars prioritised over inners in the emitLoop? From the code it seems that the main queue is dequeued first.
David Karnok
Jan 06 2018 10:33
Yes. There are users who flatMap onto just() and empty() regularly and this shortcut helped their performance greatly.