假设我有一个BehaviorProcessor
包含一些值的v
。
现在,如果我想异步请求一些数据,这取决于v
我会这样做:
val res = v.flatMapSingle { asyncRequest(it) }
现在让我们记录这个块的所有调用(映射器)
val res = v.flatMapSingle {
println("mapper")
asyncRequest(it)
}
它将打印mapper
多次,这意味着asyncRequest
被多次调用,似乎每次其他依赖流都被subscribe
调用
我试图避免多次映射器调用(从而避免多次asyncRequest
调用)。
有没有办法用标准的 rxjava2 utils 做到这一点?