admin 管理员组

文章数量: 1086019


2024年3月29日发(作者:continue语句只用于循环语句中 它的作用是跳出循环)

java线程池参数

Java线程池是一种特殊的线程组,用来重用的维护线程,可以提

高应用的响应速度、减少资源的消耗。它管理和调度创造在它存在的

线程,使程序结构更形规则,提高程序的可靠性、测试性、应用的可

维护性。

Java线程池的参数一般来说,都可以用于在构造函数中设置,但

也可以通过set方法进行改变,常见的参数有:

1、核心线程数:即线程池中核心线程容量,每个核心线程会被一

直保持,即使没有任务要供它处理,通常来说设置为CPU个数加1到

两倍的核心线程数是比较合适的。

2、最大线程数:线程池能够容纳线程的最大数量,超过这个数量

后,任务将会被拒绝,直到有线程结束。

3、工作队列长度:线程池中用于缓存等待任务的工作队列,通常

设置大一点比较安全,如果配置长度为_VALUE,即是没有

限制,如果短,当任务多于容量时,多出来的将会通过拒绝策略处理。

4、超时时间:要求线程池在获取空闲线程的时候,在多少秒响应,

如果没有空闲线程,可以新创建,如果超出设定时间根据拒绝策略处

理。

5、拒绝策略:当等待队列已满,无法提交任务时,会用到拒绝策

略,其中常用的拒绝策略有:

DiscardPolicy(直接抛弃任务)、AbortPolicy(抛出异常)、

DiscardOldestPolicy(抛弃最老的任务)等。

6、保留时间:线程池中的空的线程能够保留的最大时间,如果空

闲时间大于这个值,线程就会被回收,默认是30秒,单位毫秒,设置

为非正数表示不回收线程。


本文标签: 线程 任务 拒绝 用于