RxJava 轻知识
线程调度:
- subScribeOn:subScribe发生的线程 多次调用只有第一次有效
- observeOn:订阅者接受线程,每调用一次observerOn,线程切换一次
内置线程Schedulers:
- io:io操作,用于网络,读写文件等io密集型操作
- computation:CPU密集型操作,大量计算操作
- newThread:代表常规新线程
- mainThread:Android主线程
操作符
- map:将Observable对象转换为另一个Observable对象。
- 网络数据解析为例Okhttp3
- Observable.create
- map操作符集合gson,将Response转为Bean
- doOnNext:解析bean,数据库操作
- 子线程进行耗时任务,主线程更新ui
- subScribe根据请求结果更新UI

- concat:不交错的发射多个Observable,只有前一个Observable终止后才订阅下一个

- flatMap:多个网络请求依次依赖
- 以登录注册为例:通过注册接口注册用户信息后,立马调用自动登录接口即可

- zip:数据合并一起发放
- 把多个Observable数据合并在一个数据源再发射出去

- interval:轮训任务
