parallelStream()使用注意点

parallelStream()使用中的注意点:

1、并行流如果使用,最好使用自定义的线程池,避免使用默认的线程池,以免千万阻塞或者资源竞争等问题。

2、parallelStream适用的场景是CPU密集型的,假如本身电脑CPU的负载很大,那还到处用并行流就无法起到作用,切记不要再parallelStream操作中使用IO流

3、不要在多线程中使用parallelStream,因为大家都在抢占CPU,是不会提升效果,反而可能加大线程之间切换上下文的开销。

Runtime.getRuntime.availableProcessors()是JDK提供的获取当前系统的可能核心数,而现在多数应用是发布在容器中的,虽然部署的容器是2C4G的,但是ForkJoinPool创建的FokJoinPool可能会创建出几十个线程,因为程序部署在docker容器中,那么获取的是宿主机的CPU核心数。

容器明明分配的是2C,为什么java获取的会是物理机的核心数呢?怎么解决这个问题呢?

1、使用JDKu131以上的版本

2、使用自编译源代码的方式

相关推荐
wanhengidc19 小时前
算力服务器的优势都有哪些?
大数据·运维·服务器·网络·人工智能·安全·智能手机
飞Link19 小时前
2026年 AI 与区块链深度融合的技术范式分析
人工智能·区块链
林小卫很行19 小时前
Obsidian 入门43:给剪藏插件加上 AI,剪藏完自动写摘要、打标签
人工智能·开源
nancy_princess19 小时前
精排scaling law- 关于Token
人工智能
漫游的渔夫19 小时前
前端开发者做 AI Agent:别只渲染答案,用 7 个状态接住确认、错误和 trace
前端·人工智能·typescript
容智信息19 小时前
怎么用AI读金融研报
人工智能·金融
Raink老师19 小时前
【AI面试临阵磨枪-47】RAG 1.0 / 2.0 / 3.0 演进与区别
人工智能·ai 面试
Aloudata19 小时前
从 BI Copilot 到业务 Agent:指标服务如何成为统一数据接口?
大数据·人工智能·数据分析·copilot·agent·指标平台
星光技术人19 小时前
Scaling-Aware Data Selection for End-to-End Autonomous Driving Systems
人工智能·深度学习
love在水一方19 小时前
【InternNav】 工程详细分析
人工智能·算法·机器学习