Kotlin SharedFlow 缓存系统如何实现长尾词缓存?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2607个文字,预计阅读时间需要11分钟。
前言:Kotlin 为我们提供了两种热流的工具:StateFlow 和 SharedFlow。
StateFlow 经常被用来替代 LiveData 和充当结构化组件使用,因此对于熟悉架构的大多数开发者来说非常熟悉。其实,StateFlow 只不过是 SharedFlow 的一种特化形式。
前言
Kotlin 为我们提供了两种创建“热流”的工具:StateFlow 和 SharedFlow。StateFlow 经常被用来替代 LiveData 充当架构组件使用,所以大家相对熟悉。其实 StateFlow 只是 SharedFlow 的一种特化形式,SharedFlow 的功能更强大、使用场景更多,这得益于其自带的缓存系统,本文用图解的方式,带大家更形象地理解 SharedFlow 的缓存系统。
创建 SharedFlow 需要使用到 MutableSharedFlow() 方法,我们通过方法的三个参数配置缓存:
fun <T> MutableSharedFlow(
replay: Int = 0,
extraBufferCapacity: Int = 0,
onBufferOverflow: BufferOverflow: MutableSharedFlow<T>
接下来,我们通过时序图的形式介绍这三个关键参数对缓存的影响。
本文共计2607个文字,预计阅读时间需要11分钟。
前言:Kotlin 为我们提供了两种热流的工具:StateFlow 和 SharedFlow。
StateFlow 经常被用来替代 LiveData 和充当结构化组件使用,因此对于熟悉架构的大多数开发者来说非常熟悉。其实,StateFlow 只不过是 SharedFlow 的一种特化形式。
前言
Kotlin 为我们提供了两种创建“热流”的工具:StateFlow 和 SharedFlow。StateFlow 经常被用来替代 LiveData 充当架构组件使用,所以大家相对熟悉。其实 StateFlow 只是 SharedFlow 的一种特化形式,SharedFlow 的功能更强大、使用场景更多,这得益于其自带的缓存系统,本文用图解的方式,带大家更形象地理解 SharedFlow 的缓存系统。
创建 SharedFlow 需要使用到 MutableSharedFlow() 方法,我们通过方法的三个参数配置缓存:
fun <T> MutableSharedFlow(
replay: Int = 0,
extraBufferCapacity: Int = 0,
onBufferOverflow: BufferOverflow: MutableSharedFlow<T>
接下来,我们通过时序图的形式介绍这三个关键参数对缓存的影响。

