2017-06-16 108 views
0

有沒有辦法讓RxJava observable在其他調度程序完成後將其當前調度程序更改爲之前的調度程序?RxJava返回上一個調度程序

Observable 
     .just(null) 

工作移至IO調度

 .subscribeOn(Schedulers.io()) 

工作被移到計算調度

 .flatMap(__ -> Observable.timer(30, TimeUnit.MILLISECONDS)) 

所以,在這裏我不想明確要求觀察的io線程,而是返回到前一個調度程序(即io)。

 .subscribe(__ -> System.out.println(Thread.currentThread().getName())); 

rxjava:1.1.8

+0

'subscribeOn'表示運營商將訂閱該調度器上的Observable。 AFAIK沒有辦法隻影響upsteam。或者你可以將'subscribeOn'和'observeOn'組合到你的Observable中。 –

回答

0

你想返回到確切的線程或同一調度?前者在1.x中不可用,但可能在2.x中通過extensions library。後者要求使用observeOn(Schedulers.io())