有谁知道如何执行以下操作: 必须解析元素的内容,并且必须通过并行查询对子元素进行分组 仅当组查询之前已完成时,您才应前进到列表中的下一项
Element element = new Element();
element1.get(0) = urlA
element1.get(1) = urlB
element1.get(2) = urlC
List<Element> list = new ArrayList();
list.get(0); //consult in parallel [urlA, urlB, urlC]
//You must wait for the previous query to finish
list.get(1); //consult in parallel [urlX, urlY, urlZ]
我目前使用rxjava-3.0.3
最佳答案
您可以尝试使用concatMap 运算符
所以代码可能如下所示
Flowable.fromIterable(list)
.concatMap(element -> Flowable.just(0, 1, 2)
.map(index -> element.get(index))
.observeOn(Schedulers.computation())
.flatMap(url -> doParsingInParallel(url)))
.doOnNext(parsingResult -> handleParsingResult(parsingResult));
关于java - RX Java 中的分组并行调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61881002/