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、使用自编译源代码的方式

相关推荐
VertGrow AI销冠5 分钟前
Vertgrow Ai销冠:全面提升销售效率的AI驱动销售平台
人工智能
江瀚视野10 分钟前
昆仑芯启动港股上市:一枚芯片,如何折射百度全栈AI能力?
大数据·人工智能
人工智能培训15 分钟前
强化学习路径规划:技术内核与应用实践
人工智能·大模型·知识图谱·强化学习·智能体搭建
孟祥_成都19 分钟前
让 AI 自动写 SQL、读文档,前端也能玩转 Agent! langchain chains 模块解析
前端·人工智能
Coder_Boy_19 分钟前
基于LangChain4j的证券业务系统模块四
大数据·人工智能·spring cloud·langchain
V搜xhliang024623 分钟前
多模态MRI影像组学预测脑胶质瘤分子分型的研究进展
人工智能
爱写代码的小朋友30 分钟前
技术赋能教育革新:教育信息化与AI、计算机科学的融合发展研究
人工智能
jkyy201433 分钟前
食材图像识别与个性化饮食:智能家电如何重构膳食健康管理?
大数据·人工智能·物联网·健康医疗
kisshuan1239638 分钟前
基于Mask-RCNN与Res2Net的排水系统缺陷检测与分类
人工智能·数据挖掘
P.H. Infinity44 分钟前
【QLIB】一、系统架构
人工智能·金融