前言: 看了RxJava的Readme和一些关于RxJava的博客,对RxJava有些简单地了解了,开始练个手熟悉一下,练手过程中发现由于RxJava版本迭代,参考博客中给的例子已经不能直接用了,说明这种第三方库的使用还是有风险的。参考博客:给 Android 开发者的 RxJava 详解基于RxJava版本:2.1.12demo地址:点击打开链接1. RxJava基础知识RxJava正如Read
RxJava简介基本组成基本使用分别定义Observable的变形Observer的变形连续定义Scheduler线程分类线程使用Scheduler原理Scheduler使用变换 RxJava简介RxJava可以看做是观察者模式的升级,使用RxJava的目的主要是为了数据异步处理。相比于Handler来说,优点就在于简洁,逻辑上非常简单明了。基本组成由Observable、Observer、Su
转载
2024-05-28 20:52:18
29阅读
#写在伊始上一篇介绍了线程的一些基础知识和工作这么久以后对于多线程部分的使用经验之路,这篇主要对RxJava线程控制部分进行分析。##RxJava(本文就RxJava2.0分析)说实话,近一年多一直在用rxjava进行项目架构的编写及封装及一些异步请求的处理等等。真的很好用,但本文只对其线程部分进行分析。如果你想学习rxjava的话,推荐您看一下如下几篇文档,也是一点一点学过来的,希望可以帮到您。
概述在 RxJava 中可以通过 subscribeOn/observeOn 很方便地完成上下游指定线程的切换,日常开发除了一些常用的Rx 操作符外,这两个方法也是打交道最多的。最初学习 RxJava 的时候总是死记硬背:subscribeOn 用于指定上游线程,observeOn 用于指定下游线程,多次用 subscribeOn 指定上游线程只有第一次有效,多次用 observeOn 指定下次线
转载
2023-10-14 14:34:41
115阅读
一 前言基于RxJava2.1.1 我们在前面的 Rxjava 2 的源码解析初步分析了RxJava从创建到执行的流程,分析了RxJava的随意终止Reactive流的能力的来源;也明白了RxJava的onComplete();与onError(t);只有一个会被执行的秘密。RxJava2.X 源码分析(二)中探索了RxJava2调用subscribeOn切换被观察者线程的原理。 本次我们将继续探
转载
2023-11-07 14:03:55
68阅读
Rxjava2常见的功能性操作符有如下的一些: 废话不多说, 直接代码开路:1.subscribe() //功能性操作符
//subscribe()功能是连接被观察者Observable和观察者Observer 之间的桥梁
//创建被观察者对象Observable
Observable<Integer> o
转载
2023-11-01 23:46:58
53阅读
前面分析了RxJava中map()操作符的基本原理,今天,我们开始分析RxJava中subscribeOn()这个操作符(本篇基于RxJava2进行分析)。1. 举个栗子Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscr
转载
2024-06-17 14:32:23
32阅读
在Android发展前景相当好的情况下,本人最近搜集了一些关于Android的相关资源,当然包含以前发布的博客内容,进行了一次大整合,希望对和我一样是Android的初学者管用,如在文章中有所错误,敬请大家原谅并欢迎指正。 一、Android相关介绍 Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为
ReactiveX/RxJava: RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.https://github.com/ReactiveX/RxJav
转载
2024-06-08 20:16:20
31阅读
前言16年 的时候写过两篇关于Rxjava 1.0 的源码分析,时过境迁,现在早已是2.0 了。2.0 的代码逻辑,封装,更为易懂,也包含了 一些新特性背压,面向切面等等。所以决定,写篇文章分析RxJava 2.0 官方文档:What’s different in 2.0RxJava github示例Rxjava的使用流程,相信大家都很清楚了,以下面这个简单的demo,重点分析一下create()
转载
2024-07-17 15:26:34
36阅读
1.概念rxJava:异步的框架. 类似于 AsyncTask. 但其灵活性和扩展性远远强于前者,扩展的观察者模式实现的,何为观察者模式:观察者模式是一种一对多的依赖关系,当一个对象改变状态时,它会通知所有依赖者接受通知,并决定数据是否改变。2.原理rxJava中涉及到4个概念:Observable (可观察者,即被观察者)、 Observer (观察者)、 subscribe (订阅)、事件。O
转载
2023-11-11 11:44:07
92阅读
1. RxJava 的观察者模式解读RxJava 有四个基本概念:Observable (可观察者,即被观察者)Observer (观察者)subscribe (订阅)事件 Observable 和 Observer 通过 subscribe() 方法实现订阅关系,从而 Observable 可以在需要的时候发出事件来通知 ObserverAndroid 常见的观察者模式: 与
转载
2024-08-15 14:12:02
49阅读
ReactiveX/RxJava: RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.https://github.com/ReactiveX/RxJav
转载
2023-07-21 15:39:41
45阅读
RxJava很优势的一个方面就是他的线程切换,基本是依靠ObserveOn和SubscribeOn这两个操作符来完成的。先来看看什么是ObserveOn和SubscribeOn,官方对他们的定义是这样的:ObserveOnspecify the Scheduler on which an observer will observe this Observable
指定一个观察者在哪个调度器上观察这
转载
2024-06-23 12:07:36
26阅读
RxJava 1xRxJava 1x的四种基本角色热的冷的 ObservablesSubject Observable ObserverPublishSubjectBehaviorSubjectReplaySubjectAsyncSubjectUnicastSubjectSerializedSubjectGitHub示例 RxJava 1.xRxJava扩展了观察者模式的语义,添加了两个新的操作
转载
2024-05-31 07:25:13
45阅读
1. ObservableRxJava 的使用通常需要三步创建 Observable Observable 的字面意思是被观察者,使用 RxJava 时需要创建一个被观察者,它会决定什么时候触发事件以及触发怎样的事件。有点类似上游发送命令,可以在这里决定异步操作模块的顺序和异步操作模块的次数。创建 Observer Observer 即观察者,它可以在不同的线程中执行任务。这种模式可以极大地简化并
转载
2023-10-14 22:33:26
98阅读
#前言 年底了换工作,在很多公司的面试中都有提到对RxJava运用,在以前我就只是简单的使用Retrofit +RxJava+OkHttp的运用,自己也没有深入的理解其中的,现在自己相对于再一次学习,并进行记录;##RxJava 的观察者模式 RxJava 有四个基本概念:Observable (可观察者,即被观察者)、 Observer (观察者)、 subscribe (订阅)、事件。Obse
转载
2023-11-09 16:27:06
55阅读
注:文中的OnSubscribe1,OnSubscribe2,Observable1等等命名是通过出现的时序来命名的,越大说明越晚出现我们先来举个例子吧:Observable.create(object : Observable.OnSubscribe<String> {
override fun call(it: Subscriber<in String
转载
2024-06-11 06:43:23
47阅读
RXjava 中的observeOn subscribeOn 两个函数十分类似,相信很多人在使用时会有疑问。官方文档的说明,包括图片不是那么容易理解,特此立翻译贴一篇。官方文档解释如下地址:http://reactivex.io/documentation/operators/observeon.htmlhttp://reactivex.io/documentation/operator
转载
2023-09-05 19:16:41
95阅读
先看用法: 在一个子线程中创建一个Observable发射,Observer接受数据的全过程,执行看看Log信息:可以看到onSuscribe,subscribe,onNext执行分别在不同的线程源码分析首先这样的链式写法非常简洁,但是对代码分析增加困难,所在以上代码可以转换成这样: 可以看到转换成比较直观的代码调用;分别查看subscribeOn和observeOn:所以subThreadObs
转载
2024-07-28 20:40:49
19阅读