Rxjava2 如何让 flatMap 按调用顺序发射项目?
Rxjava2 how to have flatMap emitting items in called order?
想象有 Observable A 发射
a1, a2, a3, a4...
A.flatMap(a -> f(a))
将以不可预测的顺序发出项目,例如:
fa3, fa1, fa2, fa4...
我怎样才能得到如下顺序的结果?
fa1, fa2, fa3, fa4...
ConcatMap
可以return我想要的结果,但是它是按顺序处理流的,耗时效率不高。
我需要像 concatMap 这样具有并行处理能力的东西。任何解决方案?谢谢。
您可以使用 concatMapEager
,它会缓冲排放并按顺序生产物品。
想象有 Observable A 发射
a1, a2, a3, a4...
A.flatMap(a -> f(a))
将以不可预测的顺序发出项目,例如:
fa3, fa1, fa2, fa4...
我怎样才能得到如下顺序的结果?
fa1, fa2, fa3, fa4...
ConcatMap
可以return我想要的结果,但是它是按顺序处理流的,耗时效率不高。
我需要像 concatMap 这样具有并行处理能力的东西。任何解决方案?谢谢。
您可以使用 concatMapEager
,它会缓冲排放并按顺序生产物品。