【发布时间】:2017-03-07 21:31:35
【问题描述】:
我必须为 observable 的结果提供一个短暂的缓存。
查看选项,我看到以下内容:
缓存
replay(1).refCount(),当数据准备好时,缓存实际值。 缓存检索将检查实际数据并执行Observable.just或返回 待处理的 Observable 或发起新的请求。缓存
replay(1).autoConnect(1)并始终返回
后者似乎更直接,但它有一个警告,当缓存必须失效时如何正确处理 observable。
有一个签名:
public Observable<T> autoConnect(int numberOfSubscribers, Consumer<? super Disposable> connection)
但很难说我如何跟踪未完成的订阅以及 dispose 是否会是优雅的。
前者将负责资源释放,但您必须产生更复杂的逻辑。
【问题讨论】:
标签: java rx-java observable