RxJavas的协程流版本Flowable.replay(1).autoConnect()

时间:2019-04-27 18:22:48

标签: kotlin kotlin-coroutines

在我的情况下,ViewModel的状态是通过getState(): Flowable<State>公开的,内部是一个延迟启动的字段,该字段基本上创建了该状态的可流动对象,然后用flowable.replay(1).autoConnect()“缓存”该状态。

最终结果是,状态的实际创建(例如正在运行的数据库查询等)只执行一次,并在ViewModel存在期间重复使用,而不是在有人使用状态时重新创建状态(例如,视图可见还是隐藏)。

这很奇怪,尽管我现在没有任何更改的意图(不要更改未损坏的内容),我对协程印象深刻,我非常喜欢知道是否有一种方法可以实现完全相同的“流程” ”,并利用Kotlins最近发布的Flow功能。

0 个答案:

没有答案