subscribeOn() – задает
Scheduler, на котором выполняется подписка на
Observable. Другими словами, код метода
Observable.create() выполняется в потоке, заданном
subscribeOn().
Scheduler, который задает
subscribeOn() действует от создания
Observable и вниз по цепочке вызовов RxJava до первого
observeOn(). Место вызова
subscribeOn() в цепочке не имеет значения.
Если
subscribeOn() вызывается несколько раз на одном Rx-стриме, то в
большинстве случаев только первый вызов имеет эффект.
observeOn() – задает
Scheduler, на котором выполняются операторы, следующие после
observeOn().
В Rx-стриме может быть несколько
observeOn(), каждый из которых будет менять поток выполнения.