在RxJava中,在其他线程上订阅时,可以压缩的可观察到的值可以返回到主线程吗?

全职

我在下面尝试过。

public static void main(String[] args) {
  Observable<String> zipped = Observable.zip(
    Observable.interval(500L, TimeUnit.MILLISECONDS),
    Observable.just("A", "B", "C"), (i, v) -> i + v);
  zipped.observeOn(
    Schedulers.from(Executors.newSingleThreadExecutor()))
    .subscribe(System.out::println);
}

自从我使用以来intervalzippedobservable在不同的线程上运行。我希望该System.out::println部分在主线程上运行。

我猜想我必须使用observeOn,但是我不知道必须使用哪个Scheduler返回主线程。

是否可以?

阿卡诺克德

observeOn除非您使用的是Android 否则您将无法回到主线程对于桌面使用,您可以用来toBlocking().subscribe()在订阅线程上接收值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

角:从forkJoin返回的值在其他可观察到的管道内

在其他方法中调用改造并将结果返回到主线程

在主线程上运行可观察到的协程或rx有什么作用

是否可以重新订阅可观察到的Retrofit 2?

在后台线程上可观察到的进程

oracle 序列线程安全是否可以在其他线程尝试 NEXTVAL 时返回其线程的 CURVAL

如何从订阅中返回可观察到的

在其他线程中抛出异常会导致主线程崩溃吗?

可以从主线程分配`vkCommandPool`并转移到其他线程吗?

当使用SyncAdapter /其他线程更新时,LiveData不会观察到更改

是否可以在每个可观察到的完成上发出值,这些完成将使用单个管道发送给订阅者?

映射可观察到可完成时不调用RxJava2订阅

在Ruby中主线程退出时子线程终止可以吗?

获取可观察到的返回值,而无需订阅调用类

从期货可观察到-来自多个线程的onNext

可观察到对不同线程上更改的队列没有反应

RxJava调度,观察主线程

Redux上可观察到的理想商店订阅

ProgressBar 可以在主线程休眠时旋转吗?

RxJava:可观察到的发出重复值

订阅Angular 8中可观察到组件的问题

当基础数据源具有新值时,了解可观察到的RxJava

rxjs-缓冲发出的值,直到其他可观察到的发出,然后照常发出

Delphi-TThread可以更改VCL主线程中变量的值吗?

我可以杀死或完成()UI线程以外的其他线程中的活动吗?

可以从主线程执行segue吗?

可以使用retryWhen并在达到限制时返回可观察值吗?

识别RxJava中可观察到的发射

最终可观察到订阅