RxJava 学习笔记
2016-10-25 21:56
288 查看
扔物线文章 《给 Android 开发者的 RxJava 详解》 的学习笔记。
RxJava 介绍
Github 地址:https://github.com/ReactiveX/RxJava
https://github.com/ReactiveX/RxAndroid
引入依赖:
compile ‘io.reactivex:rxjava:x.y.z’
compile ‘io.reactivex:rxandroid:x.y.z’
“a library for composing asynchronous and event-based programs using observable sequences for the Java VM”(一个在 Java VM 上使用可观测的序列组成异步的、基于事件的程序的库)
RxJava 的本质是异步,是一个实现异步操作的库。
RxJava 的优势是简洁,是指逻辑上的简洁,即随着程序逻辑变得越来越复杂,它依然能够保持简洁
RxJava 的异步实现,是通过一种扩展的观察者模式来实现的
Observable 被观察者
Subscribe 订阅者(同Observable)
Observer 观察者
线程控制–Scheduler
在不指定线程的情况下,RxJava 遵循的是线程不变的原则,即:在哪个线程调用 subscribe(),就在哪个线程生产事件;在哪个线程生产事件,就在哪个线程消费事件。如过需要切换线程,就需要用到 Scheduler(调度器)Schedulers.immediate(): 当前线程运行,默认的 Scheduler
Schedulers.newThread(): 总是启用新线程,并在新线程执行操作
Schedulers.io(): I/O 操作(读写文件、读写数据库、网络信息交互等)所使用的 Scheduler
Schedulers.computation(): 计算所使用的 Scheduler
AndroidSchedulers.mainThread(): Android 专用,指定的操作将在Android 主程序运行。
subscribeOn: 被观察者所发生的线程,比如网络请求,I/O 操作等
observeOn: 观察者所运行的线程
相关文章推荐
- RxJava入门学习笔记
- RxJava 学习笔记二
- RxJava 学习笔记(九) --- Error Handling 错误处理操作
- RxJava android 学习笔记
- RXjava学习笔记
- RxJava学习笔记
- RxJava学习笔记
- RxJava 学习笔记(八) --- Combining 结合操作
- RxJava 学习笔记(一)
- RxJava 学习笔记(五) --- Creating 创建操作符
- RxJava学习笔记3
- RxJava入门学习笔记
- Rxjava初始,学习笔记
- RxJava 学习笔记(六) --- Transforming 变换操作符
- RxJava 学习笔记(三)
- RxJava学习笔记1
- RxJava学习笔记---简单使用
- RxJava 学习笔记一
- RxJava 相关适配库学习笔记
- RxJava--操作符学习笔记