From 4b3d0368e94fa7579da77f75d83a4f25ecbf0464 Mon Sep 17 00:00:00 2001 From: viosay Date: Mon, 7 Aug 2023 20:52:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9keepAliveTime=E5=8F=82?= =?UTF-8?q?=E6=95=B0=E8=AF=A6=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 销毁并不只针对核心线程,会对核心线程和非核心线程一视同仁。 参见《Java 性能调优实战》 --- docs/java/concurrent/java-concurrent-questions-03.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/java/concurrent/java-concurrent-questions-03.md b/docs/java/concurrent/java-concurrent-questions-03.md index 3295bc8b..5d02d63e 100644 --- a/docs/java/concurrent/java-concurrent-questions-03.md +++ b/docs/java/concurrent/java-concurrent-questions-03.md @@ -308,7 +308,7 @@ public ScheduledThreadPoolExecutor(int corePoolSize) { `ThreadPoolExecutor`其他常见参数 : -- **`keepAliveTime`**:线程池中的线程数量大于 `corePoolSize` 的时候,如果这时没有新的任务提交,核心线程外的线程不会立即销毁,而是会等待,直到等待的时间超过了 `keepAliveTime`才会被回收销毁; +- **`keepAliveTime`**:线程池中的线程数量大于 `corePoolSize` 的时候,如果这时没有新的任务提交,多余的空闲线程不会立即销毁,而是会等待,直到等待的时间超过了 `keepAliveTime`才会被回收销毁,线程池回收线程时,会对核心线程和非核心线程一视同仁,直到线程池中线程的数量等于 `corePoolSize` ,回收过程才会停止。 - **`unit`** : `keepAliveTime` 参数的时间单位。 - **`threadFactory`** :executor 创建新线程的时候会用到。 - **`handler`** :饱和策略。关于饱和策略下面单独介绍一下。 @@ -955,4 +955,4 @@ public int await() throws InterruptedException, BrokenBarrierException { - Java 并发之 AQS 详解:https://www.cnblogs.com/waterystone/p/4920797.html - Java 并发包基石-AQS 详解:https://www.cnblogs.com/chengxiao/archive/2017/07/24/7141160.html - \ No newline at end of file +