Java8 关于最佳线程数

作者: 没有颜色的菜 | 来源:发表于2018-09-09 21:35 被阅读4次

前言

关于最佳线程数的设置,总是那么模糊,不知道该如何设置,偶然间在 Java 并发编程实践 里看到了对他的定义:

要使处理器达到期望的使用率,线程池的最佳大小等于:


1695055395.jpg

需要注意的是,我们需要制定一个 CPU 的利用率,如果是 100%,那么线程数就取决于Wait Time / Compute Time

  • 如果我们的任务是计算型任务,那么等待时间为零,那么线程数设置为 CPU + 1
  • 如果我们的任务是 IO 密集型,那么等待时间不为零,需要加大线程数

Java 中获取可用的 CPU 数

Int NUM_CPU = Runtime.getRuntime().availableProcessors();

我们可以在很多类库里边看到它的身影,很多需要线程池的类库,凡是不那么抢系统资源的都会通过这个值设置线程池的大小

相关文章

  • Java8 关于最佳线程数

    前言 关于最佳线程数的设置,总是那么模糊,不知道该如何设置,偶然间在 Java 并发编程实践 里看到了对他的定义:...

  • tomcat的maxThreads、acceptCount(最大

    最佳线程数总结(1) 多线程JBoss应用服务器WebTomcat 最佳线程数: 性能压测的情况下,起初随着用户数...

  • 多线程

    多线程使用场景: 主要是提升性能,降低延迟,提高吞吐量。 最佳线程数原则:将硬件的性能发挥到极致。 最佳线程数 =...

  • 最佳线程数计算

    并发编程适用于什么场景? 根据应用场景 CPU 密集型 I/O密集型程序 CPU 密集型 一个完整请求,I/O操作...

  • Tomcat 请求线程的解析

    查询tomcat当前并发连接数 关于tomcat 请求线程的问题 Tomcat 请求线程数

  • 第一章:为什么要关心Java8

    给苹果按照重量排序 Java8的写法 Java8对硬件的影响 Java8之前程序都是单线程的,如果想使用多线程那么...

  • 优雅编程 - 语法糖

    本篇采用示例的形式展示Java8的常见特性应用. 线程写法 Java8之前 Java8写法 比较器写法 Java8...

  • 线程数与QPS计算

    01 最佳线程数计算 1.1 cpu密集型 n+1当因为页缺失或其它故障而导致某一线程暂停时,额外的线程可以保证c...

  • ThreadPoolExecutor七大构造参数详解

    corePoolSize:线程池核心线程数(平时保留的线程数) maximumPoolSize:线程池最大线程数(...

  • 线程池参数配置及执行顺序

    线程池按以下行为执行任务 1. 当线程数小于核心线程数时,创建线程。 2. 当线程数大于等于核心线程数,且...

网友评论

    本文标题:Java8 关于最佳线程数

    本文链接:https://www.haomeiwen.com/subject/qrgdgftx.html