安卓开发(四)--RxJava

《安卓开发(四)--RxJava》 2016-12-1

版权声明:本文为博主原创文章,转载请说明出处。

一.RxJava是什么

a library for composing asynchronous and event-based programs using observable sequences for the Java VM

一个实现异步操作的库。

二.优点

逻辑简洁

三.实现

RxJava的异步实现是通过一种扩展的观察者模式来实现的。RxJava的四个基本概念:Observer, Observable, Subscribe, 事件。Observable和Observer通过subscribe()方法实现订阅关系,从而Observable可以在需要的时候发出事件来通知Observer。

(1)创建Observer

《安卓开发(四)--RxJava》

(2)创建Observable

《安卓开发(四)--RxJava》

(3)Subscribe

创建了Observable和Observer之后,再用subscribe()方法将它们联结起来,整条链子就可以工作了。

《安卓开发(四)--RxJava》

四.线程控制–schedule

在不指定线程的情况下, RxJava 遵循的是线程不变的原则,即:在哪个线程调用subscribe(),就在哪个线程生产事件;在哪个线程生产事件,就在哪个线程消费事件。如果需要切换线程,就需要用到Scheduler(调度器)。

五.变换

所谓变换,就是将事件序列中的对象或整个序列进行加工处理,转换成不同的事件或事件序列。

六.适用场景和使用方式

(1)与Retrofit的结合

(2)RxBinding

(3)各种异步操作

(4)ReBus

详细原文链接

    原文作者:喜欢书的女孩
    原文地址: https://www.jianshu.com/p/546319cd6803
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞