RxJava的工作原理与特性解析
1. 同步与异步操作
在RxJava中,大部分Observable函数管道是同步的,除非特定操作符需要异步执行,如 timeout 或 observeOn ,而Observable本身可以是异步的。
1.1 示例说明
以下示例展示了同步和异步的混合使用:
Observable.create(s -> {
... async subscription and data emission ...
})
.doOnNext(i -> System.out.println(Thread.currentThread()))
.filter(i -> i % 2 == 0)
.map(i -> "Value " + i + " processed on " + Thread.currentThread())
.subscribe(s -> System.out.println("SOME VALUE =>" + s));
System.out.println("Will print BEFORE values are emitted")
在这个例子中,Observable是异步的, subscribe 是非阻塞的,所以最后一行 println 会在事件传播和 “SOME VALUE ⇒” 输出之前打印。然而, filter() 和 map
RxJava核心原理解析
超级会员免费看
订阅专栏 解锁全文
661

被折叠的 条评论
为什么被折叠?



