project-reactor - 为什么 ParallelFlux 没有类似于 Flux 的 collectList()?
问题描述
Flux 有 collectList(),使用起来非常方便,但是 ParallelFlux 中没有 collectList(),我试图了解在 ParallelFlux 中省略 collectList() 背后的原因。
解决方案
由于创建 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));
推荐阅读
- php - Laravel SweetAlert 在验证失败块中不起作用
- validation - 如何使用 Yup 验证电话号码但不是必需的?
- dynamics-crm - CRM 365 - 隐藏站点地图区域
- python - Python:“浮点”对象不能解释为整数?
- java - 覆盖嵌入 id 的列名
- scikit-learn - 为什么 `scoring="neg_log_loss"` 和 `scoring=make_scorer(log_loss)` 给出如此不同的验证分数?
- r - 当 y 是偏态分布时如何构建 GEE?
- regex - 算术表达式中的正则表达式数字
- java - 如何使用 javafx-maven-plugin 运行包含 jfoenix 的 maven java fx 项目
- python - Pycharm numpy 模块没有属性'py'