java - RxJava : How to make observable to create on different thread than main thread

标签 java android rx-java rx-android rx-java2

我希望可观察代码在与主线程不同的线程上运行。我该怎么做,我这样做:

Observable operationObservable = Observable.create(new ObservableOnSubscribe() {
        @Override
        public void subscribe(ObservableEmitter e) throws Exception {
            e.onNext(longRunningOperation());
            e.onComplete();
        }
    })
    .subscribeOn(Schedulers.io()) // subscribeOn the I/O thread
    .observeOn(AndroidSchedulers.mainThread());

最佳答案

如果您需要一个新线程来运行某些内容,只需使用subscribeOn(Schedulers.newThread())即可。

另一种选择是创建您自己的调度程序和执行程序,这在大多数情况下实际上是不必要的。

进一步阅读: link1 link2 link3

关于java - RxJava : How to make observable to create on different thread than main thread,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46791688/

相关文章:

java - 如何在 IE 中使 GWT Alert 提示变大

android - 如何永久删除SD卡上的数据

java - 在 Android 上发布 https

java - 如何用 rx-java 替换 'if statement' 以避免回调 hell ?

java - 如何将 zip() 函数中的异常传递给订阅者

java - 幂和阶乘级数和 说明

java - Android PixelXorXfermode 已弃用

android - RxJava : Error occurred when trying to propagate error to Observer. onError

XML 文件中的 Java 错误 : aborting build

java - 如何将纽约时区转换为亚洲时区