RxJava
文章平均质量分 92
RxJava使用及分析
Whhang_
愿乘长风 破万里浪
展开
-
RxJava3.x入门(一)——概述及使用
RxJava3.x入门指南(一)RxJava简介ReactiveX是Reactive Extensions的缩写,一般简写为Rx。Rx是一个编程模型,目标是提供一致的编程接口,帮助开发者更方便的处理异步数据流。Rx的大部分语言库由ReactiveX这个组织负责维护,比较流行的有RxJava/RxJS/Rx.NET…其有一下特点:观察者模式函数式风格:对可观察数据流使用无副作用的输入输出函数,避免了程序里错综复杂的状态简化代码 :Rxjava的操作符通常可以将复杂的难题简化为很少的几行代码异原创 2021-07-29 18:39:26 · 989 阅读 · 0 评论 -
RxJava3.x入门(二)——创建操作符和变换操作符
RxJava3.x入门指南(二)——创建操作符和变换操作符创建操作符一、基础创建1.create()使用Create操作符创建一个完整的Observable,可以传递onNext,onError和onCompleted等事件。代码演示: Observable.create((ObservableOnSubscribe<Integer>) e -> { e.onNext(1); e.onNext(2);原创 2021-07-30 09:21:19 · 580 阅读 · 0 评论 -
RxJava3.x入门(三)——组合操作符
RxJava3.x入门指南(三)——组合操作符和过滤操作符组合操作符一、合并观察者操作符1.concat()/concatArray()作用:组合多个被观察者一起发送数据,合并后 按发送顺序串行执行两者区别:组合被观察者的数量,即concat()组合被观察者数量≤4个,而concatArray()则可>4个代码演示: Observable.concat(Observable.just(1,2,3),Observable.just("x","y","z"))原创 2021-07-30 10:31:56 · 668 阅读 · 0 评论 -
RxJava3.x入门(四)——过滤操作符
RxJava3.x入门指南(二)——过滤操作符一、根据指定事件条件过滤事件1.filter()作用:通过一定逻辑来过滤被观察者发送的事件,如果返回true则发送事件,否则不会发送代码演示: Observable .just(1,2,3,4,5) .filter(new Predicate<Integer>() { @Override原创 2021-07-30 11:29:47 · 421 阅读 · 0 评论 -
RxJava3.x入门(五)——功能操作符
RxJava3.x入门指南(五)——功能操作符一、线程调度操作符1.subscribeOn()作用:指定被观察者的线程,如果多次调用此方法,只有第一次有效。代码演示: Observable.create(new ObservableOnSubscribe<Integer>() { @Override public void subscribe(@NonNull ObservableEmitter<Integer&g原创 2021-07-30 15:59:35 · 648 阅读 · 0 评论 -
RxJava3.x入门(六)——条件操作符
RxJava3.x入门指南(六)——条件操作符条件操作符汇总1.all()作用:判定是否Observable发射的所有数据都满足某个条件代码演示: Observable.just(1,2,3,4,5) .all(new Predicate<Integer>() { @Override public boolean test(Integer integer)原创 2021-07-30 16:55:04 · 844 阅读 · 0 评论 -
RxJava3.x入门(七)——背压策略
RxJava3.x入门(七)——背压策略一、背压简介上下游在不同的线程中,通过Observable发射,处理,响应数据流时,如果上游发射数据的速度快于下游接收处理数据的速度,这样对于那些没来得及处理的数据就会造成积压,这些数据既不会丢失,也不会被垃圾回收机制回收,而是存放在一个异步缓存池中,如果缓存池中的数据一直得不到处理,越积越多,最后就会造成内存溢出,这便是响应式编程中的背压(backpressure)问题。背压是指在异步场景中,被观察者发送事件速度远快于观察者的处理速度的情况下,一种告诉上游的被原创 2021-08-02 10:08:57 · 1386 阅读 · 0 评论