1.Flow流程中为什么是【冷】的先看一段Flow的使用代码:fun main() = runBlocking { flow { emit(0) emit(1) emit(2) emit(3) }.collect{ println("it:$it") } println("end")
前言本文旨在通过实际业务场景阐述如何使用Kotlin Flow解决Android开发中的痛点问题,进而研究如何优雅地使用Flow以及纠正部分典型的使用误区。有关Flow的介绍及其操作符用法可以参考:异步流 - Kotlin 语言中文站,本文不做赘述。基于LiveData+ViewModel的MVVM架构在某些场景下(以横竖屏为典型)存在局限性,本文会顺势介绍适合Android开发的基于Flow/C
转载 2024-09-12 12:11:28
130阅读
目录【Koltin Flow(一)】五种创建flow的方式【Koltin Flow(二)】Flow操作符之末端操作符【Koltin Flow(三)】Flow操作符之中间操作符(一)【Koltin Flow(三)】Flow操作符之中间操作符(二)【Koltin Flow(三)】Flow操作符之中间操作符(三)【Koltin Flow(四)】Flow背压【Koltin Flow(五)】SharedFl
转载 2024-02-29 09:23:54
73阅读
Kotlin协程中的Flow主要用于处理复杂的异步数据,以一种”流“的方式,从上到下依次处理,和RxJava的处理方式类型,但是比后者更加强大。Flow基本概念Flow中基本上有三个概念,即 发送方,处理中间层,接收方,可以类比水利发电站中的上游,发电站,下游的概念, 数据从上游开始发送”流淌“至中间站被”处理“了一下,又流淌到了下游。 示例代码如下flow { // 发送方、上游
转载 2024-10-21 09:23:18
92阅读
# 使用RxJava实现数据流 ## 概述 RxJava是一个用于响应式编程的库,它简化了异步编程和事件驱动编程。在本文中,我将向你介绍如何使用RxJava来实现数据流。 ## 步骤概述 在使用RxJava实现数据流之前,我们需要先了解整个流程。下面是一张表格,展示了实现数据流的步骤。 | 步骤 | 描述 | | ---- | ---- | | 步骤一 | 创建Observable | |
原创 2023-12-25 07:44:19
45阅读
目录 一、Flow介绍二、简单使用三、原理四、两种热流 SateFlow & SharedFlow五、Flow与LiveData六、Flow与Channel七、总结一、Flow介绍引入Flow的目的:Flow解决了什么问题。LiveData不支持线程切换,所有数据转换都将在主线程上完成,有时需要频繁更改线程,面对复杂数据流时处理起来比较麻烦。而RxJava又有些过于麻烦
转载 2023-11-24 09:54:47
147阅读
简要:需求了解:Rxjava 中当数据处理派发中发生了异常 ,观察者会接受到一个 Error 的通知,那如果不想发射这个异常的通知,自己处理掉呢?答案当然是可以的,在 Rxjava 中很多操作符可用于对 Observable 发射的 onError 通知做出响应或者从错误中恢复。例如:吞掉这个错误,切换到一个备用的Observable继续发射数据吞掉这个错误然后发射默认值吞掉这个错误并立即尝试重启
# RxJava Flow 数据详解 在 RxJava 中,**Flowable** 是一种支持背压(backpressure)的数据类型,用于处理大量数据或者数据流。在使用 RxJava 进行数据处理时,我们经常会用到 Flowable 来处理数据源,以保证数据的稳定性和高效性。本文将详细介绍 RxJava Flowable 的使用方法和特性。 ## 什么是 Flowable **Flo
原创 2024-03-05 07:17:22
50阅读
Flow是facebook出品的JavaScript静态类型检查工具。 由于JavaScript是动态类型语言,它的灵活性也会造成一些代码隐患,使用Flow可以在编译期尽早发现由类型错误引起的bug,这种方式非常有利于大型项目源码的开发和维护。一、 Flow的安装npm install --g flow-bin创建一个项目文件夹./demo进入项目文件夹。npm init -y创建package.
转载 2024-09-30 21:18:38
49阅读
现在呢Rxjava 到3.0 了, 使用首先 引入库implementation "io.reactivex.rxjava3:rxjava:3.0.0-RC5" implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'1  引入库之后创建被观察者 ------->产生事件// 1. 创建被观察者 Observable 对象
RxJava学习RxJava是基于Reactive-Streams规范的异步开发框架响应类型create参数(响应接口)发射器ObserverObservableFlowableOnSubscribeObservableEmitterObserverFlowableFlowableOnSubscribeFlowableEmitterFlowableSubscriberSingleSingleOnS
转载 2023-09-02 08:43:15
469阅读
1.基础概念介绍1.1 观察者模式观察者模式,其实对于Android开发者而言,并不陌生,button的setOnClickListener,就是一个典型的观察者模式。控件button是被观察者,它产生一个事件(点击),观察者OnClickListener接收到,做出相应的处理,而setOnClickListener就是订阅者,它将两者连接起来以上面为例,观察者模式需要具备的三个角色:被观察者,观
这是系列笔记,目录提要:cppcoro 源码级使用教程系列: 概述 | C++20 coroutine 教程 | io_uring 异步IO 网络框架 系列笔记_我说我谁呢 --CSDN博客很遗憾的是,虽然本身学习服务器应该把 socket 编程、缓存处理、linux 系统调用信号机制等这些为重点,但是对于要用 coroutine 来做的话,其实是优点舍近求远的,因为你必须理解异步和 corout
1、BPMN简介业务流程模型和标记法(BPMN, Business Process Model and Notation)是一套图形化表示法,用于以业务流程模型详细说明各种业务流程。它最初由业务流程管理倡议组织(BPMI, Business Process Management Initiative)开发,名称为"Business Process Modeling Notation",即“业务流程
转载 2023-12-16 21:31:08
0阅读
代码讲解Flow在很多地方都与Paging3结合使用,而且Paging3与Paging2也有很大的不同。所以这里讲解下。主要有以下内容Paging3的结构组成 Flow与Paging3 下拉刷新 上拉加载更多与离奇bug的解决 上游数据缓存数据从PagingSource来,Pager里设置PageConfig,加载完后会得到Flow,最后交给PagingDataAdapter更新UI 我们看下接口
转载 2024-01-03 07:36:07
62阅读
目录subscribeOn操作符demo实例如何切换的线程 subscribeOn操作符上一节我们分析了observerOn操作符,它是可以切换onNext,onComplete所在线程的,也就是事件消费的线程;这一节我们来分析subscribeOn操作符,这个操作符是用来切换createEmitter类的subscribe方法的线程的,也就是切换事件发射所在的线程。demo实例按照惯例还是用一
原文地址:5 Not So Obvious Things About RxJava 原文作者:Jag Saund [外链图片转存失败(img-pClXo41S-1562134216058)(https://cdn-images-1.medium.com/max/2000/1*0VDGLZYyQhUFBa9ZkFiHEQ.jpeg)]震惊!RxJava 5 个不为人知的小秘密无论你是刚刚接触 RxJ
转载 7月前
9阅读
What is Kotlin?Kotlin是JVM和Android的实用编程语言,结合了OO和功能特性,专注于互操作性,安全性,清晰度和工具支持。本文记录自己学习kotlin认为需要记录的重点,如果需要详细学习,请点击Kotlin中文文档学习。基本类型在 Kotlin 中,所有变量的成员方法和属性都是一个对象。一些类型是内建的,它们的实现是优化过的,但对用户来说它们就像普通的类一样。数值
转载 2024-08-26 19:43:04
21阅读
# 使用 Kotlin 代替 RxJava 在 Android 开发中,RxJava 是一个非常流行的库,用于处理异步事件和数据流。然而,随着 Kotlin 的普及和发展,许多开发者开始使用 Kotlin 替代 RxJava 来简化代码并提高效率。本文将介绍如何使用 Kotlin 代替 RxJava,并给出相应的代码示例。 ## 为什么选择 Kotlin 代替 RxJava RxJava
原创 2024-06-25 06:23:38
113阅读
上一篇介绍了 Android Studio安装Kotlin插件和使用,本篇介绍Kotlin基本语法。一 变量(var)和常量(val)Kotlin 语言声明一个变量使用关键字var,声明一个常量使用val,声明时如果没有指定类型可以自动推测出字段类型。1 常量 (val)val a: Int = 1 // 定义常量时进行赋值 val b = 2 // 自动推测常量类型为 Int val
  • 1
  • 2
  • 3
  • 4
  • 5