2017-06-16 4 views
0

Gibt es eine Möglichkeit, RxJava beobachtbar zu bitten, seinen aktuellen Scheduler auf den vorherigen zu ändern, nachdem die Arbeit an einem anderen Scheduler durchgeführt wurde?RxJava Rückkehr zum vorherigen Scheduler

Observable 
     .just(null) 

Arbeit dem io-Scheduler bewegt wird

 .subscribeOn(Schedulers.io()) 

Arbeit der Berechnung Scheduler bewegt wird

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

So, hier möchte ich nicht ausdrücklich auf die für die Beobachtung stellen io thread, sondern um zum vorherigen Scheduler zurückzukehren (was io ist).

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

rxjava: 1.1.8

+0

'subscribeOn' bedeutet, dass der Betreiber das Upsamp-Observable auf diesem Scheduler abonnieren wird. AFAIK gibt es keine Möglichkeit, nur upsteam zu beeinflussen. Oder Sie können eine Kombination aus "subscribeOn" und "observeOn" für Ihr Observable verwenden. –

Antwort

0

Haben Sie auf den genauen Thread oder denselben Scheduler zurückkehren wollen? Ersteres ist nicht in 1.x verfügbar, aber möglich in 2.x über extensions library. Letzteres erfordert die Verwendung von observeOn(Schedulers.io()).

Verwandte Themen