rxjava连续concatmap如何按阶段开始发射

Observable.from(Iterable)
      .concatMap(new Function<T,R>(){
      public interface ObservableSource<T> {
           1. ...........          
      })
      .concatMap(new Function<T,R>(){
      public interface ObservableSource<T> {
           2. ...........          
      })
      .concatMap(new Function<T,R>(){
      public interface ObservableSource<T> {
           3. ...........          
      })
      .subScribe(new Consumer()........
      
      

现在是有的网络请求快的话已经走到3了慢的还在走1,如何让源按全部走完1,再开始按序走2、3。

阅读 1.6k
1 个回答

你是要第一个阶段全都完成,才开始2,3阶段?那么你可以收集好第一阶段的全部值然后再开始2,3阶段
可以考虑用toList,buff,zip这些操作符

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏