rxJava3 中的立即调度程序在哪里?
Where is the Immediate Scheduler in rxJava3?
在 rxJava 1 there was Scheduler.immediate()
which let you schedule work on the current thread. In rxJava 3 我再也找不到这个调度程序了。
有谁知道 rxJava 3 中 Scheduler.immediate()
的替代品是什么?
我的用例:
我有一个客户端 API,我用它来订阅来自远程服务器的无限事件流(例如新闻提要)。 API 通过我注册的回调通知我事件:
Observable.create(emitter -> apiClient.registerCallback(event -> emitter.onNext(event)))
.observeOn(Schedulers.immediate()) // I'd like downstream operators to run on current thread
.map(myFunc);
但是,API 从另一个线程调用我的回调。我希望在当前线程(创建 Observable
的线程)上进行 运行 下游计算,例如 myFunc
,以免阻塞 API 的线程。
据我所知,在 RxJava 3 中你可以使用 ImmediateThinScheduler 来获得同样的效果。
虽然它保存在 internal
包中,但您可以使用它。
API 非常简单,如果您不想依赖他们的 internal
包,您实际上可以自己创建一个。
在 rxJava 1 there was Scheduler.immediate()
which let you schedule work on the current thread. In rxJava 3 我再也找不到这个调度程序了。
有谁知道 rxJava 3 中 Scheduler.immediate()
的替代品是什么?
我的用例:
我有一个客户端 API,我用它来订阅来自远程服务器的无限事件流(例如新闻提要)。 API 通过我注册的回调通知我事件:
Observable.create(emitter -> apiClient.registerCallback(event -> emitter.onNext(event)))
.observeOn(Schedulers.immediate()) // I'd like downstream operators to run on current thread
.map(myFunc);
但是,API 从另一个线程调用我的回调。我希望在当前线程(创建 Observable
的线程)上进行 运行 下游计算,例如 myFunc
,以免阻塞 API 的线程。
据我所知,在 RxJava 3 中你可以使用 ImmediateThinScheduler 来获得同样的效果。
虽然它保存在 internal
包中,但您可以使用它。
API 非常简单,如果您不想依赖他们的 internal
包,您实际上可以自己创建一个。