Kolin FLow 相关笔记

19 阅读1分钟

异步数据流处理组件,方便在异步场景下更好的处理数据流。支持背压,支持协程,能够有效避免内存泄漏等oom问题。

一个异步数据流包含:上游,操作符,下游。

冷流:只有下游开始消费,上游才开始产生数据。 热流:无论下游是否有消费,上游都会自己产生数据。StateFlow/ShareFlow

MutableStateFLow(可读可写),StateFlow(只可读)

  • 值唯一
  • 共享数据流
  • 最新值给订阅者
  • 防抖,相同值不更新数据
  • 必须初始值

MutableSharedFLow(),SharedFlow()

  • MutableSharedFLow没有初始值
  • SharedFLow()可以保留历史数据,新的订阅者可以获取
  • MutableSharedFLow发射值需要调用emit()/tryEmit(),没有setValue()