RxJava有几个重要关键字,即函数响应式编程,观察者模式,事件发射,消费等等。以下这段话摘自其他文章Android 响应式编程 RxJava2 完全解析。鸣谢作者。
响应式编程的组成为Observable/Operator/Subscriber,RxJava在响应式编程中的基本流程>如下:
这个流程,可以简单的理解为:Observable -> Operator1 -> Operator2 -> Operator3 -> Subscriber
- Observable发出一系列事件,他是事件的产生者;
- Subscriber负责处理事件,他是事件的消费者;
- Operator是对Observable发出的事件进行修改和变换;
- 若事件从产生到消费不需要其他处理,则可以省略掉中间的Operator,从而流程变为 Obsevable -> Subscriber;
- Subscriber通常在主线程执行,所以原则上不要去处理太多的事务,而这些复杂的处理则交给Operator;
假如中间没有Operator,流程只有Observable到Subscriber,那么画UML类图,跟踪源码,来看函数执行顺序。

Observable.create(new ObservableOnSubscribe<IDAL>() {
@Override
public void subscribe(ObservableEmitter<IDAL> emitter) throws Exception {
IDAL idal;
try {
idal = NeptuneLiteUser.getInstance().getDal(application);
} catch (Exception e) {
LogUtil.e(e);
throw e;
}
if (!emitter.isDisposed()) {
emitter.onNext(idal);

本文介绍了RxJava2的基本流程,包括Observable、Operator和Subscriber的角色。通过源码分析,展示了在没有Operator的情况下,创建Observable、Subscriber并订阅的过程。执行顺序为:Observer的onSubscribe -> ObservableOnSubscribe的subscribe -> Observer的onNext和onComplete。文中还提到,RxJava的灵活性在于使用操作符简化复杂业务逻辑,如短信验证码倒计时场景。
最低0.47元/天 解锁文章
3050

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



