多线程参数设置

本文详细介绍了Java线程池的默认值和核心参数设置,包括corePoolSize、queueCapacity、maxPoolSize和keepAliveTime。通过计算公式,解释了如何根据系统任务量和响应时间需求来合理设置这些参数,以确保线程池高效运行。
摘要由CSDN通过智能技术生成

一、默认值

  • corePoolSize=1
  • eueCapacity=Integer.MAX_VALUE
  • maxPoolSize=Integer.MAX_VALUE
  • epAliveTime=60s
  • allowCoreThreadTimeout=false
  • jectedExecutionHandler=AbortPolicy()

二、核心参数设置

为了说明合理设置的条件,我们首先确定有以下几个相关参数:

  1. tasks,程序每秒需要处理的最大任务数量(假设系统每秒任务数为 100~1000)
  2. tasktime,单线程处理一个任务所需要的时间(每个任务耗时 0.1 秒)
  3. responsetime,系统允许任务最大的响应时间(每个任务的响应时间不得超过 2 秒)

1 corePoolSize:核心线程数

每个任务需要 tasktime 秒处理,则每个线程每秒可处理1/tasktime 个任务。系统每秒有 tasks 个任务需要处理,则 corePoolSize 计算公式为:

corePoolSize = tasks * tasktime

tasks * tasktime 个线程数。假设系统每秒任务数为 100 到 1000 之间,每个任务耗时 0.1 秒,则需要 100 x 0.1 至

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值