当前位置: 首页 > news >正文

stream-并行流

定义

  • 常规的流都是串行的流
  • 并行流就是并发的处理数据,一般要求被处理的数据互相不影响
  • 优点:数据多的时候速度更快,
  • 缺点:浪费系统资源,数据少的时候开启线程更耗费时间

模版

Stream<Integer> stream1 = Stream.of(1, 2, 3, 4);
// 如何使用parallel方法 将数据收集到list中
List<Integer> collect1 = stream1.parallel().collect(Collectors.toList());
System.out.println(collect1);// 万能写法
Stream<Integer> stream2 = Stream.of(1, 2, 3, 4);
ArrayList<Integer> collect2 = stream2.parallel().collect(Collector.of(() -> new ArrayList<Integer>()   // 供应商 如何创建一个容器, (list, item) -> list.add(item) //  累加器 如何将一个元素添加到容器中, (list1, list2) -> {list1.addAll(list2);return list1;} // 组合器 如何将两个容器合并, list -> list // 完成器 如何将容器转换为最终的结果// 特性:是否并发 是否有序 是否收尾(默认是不支持并发,需要收尾,保证顺序))
);
System.out.println(collect2);

并行流程图

在这里插入图片描述

http://www.lryc.cn/news/355234.html

相关文章:

  • 插件“猫抓”使用方法 - 浏览器下载m3u8视频 - 合并 - 视频检测下载 - 网课下载神器
  • 【quarkus系列】构建可执行文件native image
  • linux(ubuntu)常用的代理设置
  • 红队攻防渗透技术实战流程:红队目标上线之Webshell免杀对抗
  • Habicht定理中有关子结式命题3.4.6的证明
  • 【Unity AR开发插件】如何快速地开发可热更的AR应用
  • Divisibility Part1(整除理论1)
  • 代码随想录算法训练营第三十七天 | 860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球
  • GolangFoundation
  • 如果任务过多,队列积压怎么处理?
  • FTP协议——BFTPD基本操作(Ubuntu+Win)
  • 为什么需要分布式 ID?
  • MIT6.828 Lab2-3 Sysinfo
  • 形态学操作:腐蚀、膨胀、开闭运算、顶帽底帽变换、形态学梯度区别与联系
  • StringBufferInputStream类,你学会了吗?
  • 06_Tomcat
  • 系统安全扫描扫出了:可能存在 CSRF 攻击怎么办
  • Android ART 虚拟机简析
  • Android低代码开发 - MenuPanel的源码剖析和基本使用
  • Leetcode刷题笔记3
  • 初识C语言——第二十九天
  • LeetCode27.移除元素
  • DiffMap:首个利用LDM来增强高精地图构建的网络
  • ComfyUI简单介绍
  • 【内存泄漏Bug】animation未释放
  • 《异常检测——从经典算法到深度学习》28 UNRAVEL ANOMALIES:基于周期与趋势分解的时间序列异常检测端到端方法
  • Python正则模块re方法介绍
  • pdf使用pdfbox切割pdf文件MultipartFile
  • 力扣HOT100 - 31. 下一个排列
  • 设计模式 20 中介者模式 Mediator Pattern