Function Operator | 功能 | |
订阅 | subscribe() | 即使得被观察者 & 观察者 形成订阅关系 |
延迟 | delay() | 使得被观察者延迟一段时间再发送事件 |
在生命周期内操作 | doOnEach() | 当observable每发送一次数据事件就会调用一次 |
doOnNext() | 执行Next事件之前调用 | |
doOnCompleted() | observable正常发送事件完毕后调用 | |
doAfterNext() | 执行Next事件之后调用 | |
doOnError() | observable发送错误事件时调用 | |
doOnSubscribe() | 观察者订阅时调用 | |
doOnTerminate() | observable发送事件完毕后调用,无论正常发送完毕/异常终止 | |
doOnUnsubscribe() | 观察者取消订阅时调用 | |
doOnFinally() | 最后执行 | |
线程调度(被观察者 | subscribeOn() | 指定被观察者的工作线程,在该线程上生产事件。传入RxJava的内置线程类型。 |
observeOn() | 指定观察者接收和响应事件的线程。 | |
内置线程类型 | Schedulers.immediate() | 当前所在线程,默认。 |
AndroidSchedulers.mainThread() | Android主线程,操作UI。不应该在UI线程做耗时操作。ANR。 | |
Schedulers.newThread() | 常规新线程。耗时等操作 | |
Schedulers.io() | IO操作线程。网络请求、读写文件等io密集型操作。网络请求也是IO线程,本质是套接字通信。 | |
Schedulers.computation() | CPU计算操作线程,大量计算操作。 | |
错误处理。发送事件过程中,遇到错误时的处理机制 | onErrorReturn | 遇到错误时,发送1个特殊事件 & 正常终止。可捕获在它之前发生的异常 |
onErrorResumeNext() | 遇到错误时,发送1个新的 | |
onExceptionResumeNext() | 遇到错误时,发送1个新的 | |
retry() | 重试,即当出现错误时,让被观察者( | |
重复发送。重复不断地发送被观察者事件 | repeat() | 无条件地、重复发送 被观察者事件。具备重载方法,可设置重复创建次数 |
repeatWhen() | 有条件地、重复发送 被观察者事件。将原始 |
RxJava学习:功能性操作符
最新推荐文章于 2024-07-19 15:16:23 发布