【发布时间】:2019-05-02 03:13:22
【问题描述】:
Flux 有 collectList(),使用起来非常方便,但是 ParallelFlux 中没有 collectList(),我试图了解在 ParallelFlux 中省略 collectList() 背后的原因。
【问题讨论】:
标签: project-reactor
Flux 有 collectList(),使用起来非常方便,但是 ParallelFlux 中没有 collectList(),我试图了解在 ParallelFlux 中省略 collectList() 背后的原因。
【问题讨论】:
标签: project-reactor
由于创建 ParallelFlux 是为了在不同的线程中并行运行流,因此执行顺序与第一个流的顺序不同,因此通量没有正确的顺序来收集流。
-它提供您收集以按照您的规则收集它
-它为您提供 collectSortedList 以您选择的排序方式收集
-如果您只是想将其收集为列表并且订单不计量,您可以这样做
Integer integer[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
ParallelFlux.from(Flux.fromArray(integer), 4)
.runOn(Schedulers.parallel())
.sequential()
.collectList()
.subscribe(integer1 -> System.out.println(integer1));
【讨论】: