From 28d5cc075c91828e7d0b5ef5d331497a09f10f09 Mon Sep 17 00:00:00 2001 From: qiuyukang Date: Mon, 4 Jan 2021 11:10:16 +0800 Subject: [PATCH] =?UTF-8?q?Fix=202020=E6=9C=80=E6=96=B0Java=E5=B9=B6?= =?UTF-8?q?=E5=8F=91=E8=BF=9B=E9=98=B6=E5=B8=B8=E8=A7=81=E9=9D=A2=E8=AF=95?= =?UTF-8?q?=E9=A2=98=E6=80=BB=E7=BB=93.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修正错别字:“之行”改为“执行” --- .../2020最新Java并发进阶常见面试题总结.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/java/multi-thread/2020最新Java并发进阶常见面试题总结.md b/docs/java/multi-thread/2020最新Java并发进阶常见面试题总结.md index 7097b672..903ad702 100644 --- a/docs/java/multi-thread/2020最新Java并发进阶常见面试题总结.md +++ b/docs/java/multi-thread/2020最新Java并发进阶常见面试题总结.md @@ -775,14 +775,14 @@ pool-1-thread-1 End. Time = Tue Nov 12 20:59:54 CST 2019 int c = ctl.get(); // 下面会涉及到 3 步 操作 - // 1.首先判断当前线程池中之行的任务数量是否小于 corePoolSize + // 1.首先判断当前线程池中执行的任务数量是否小于 corePoolSize // 如果小于的话,通过addWorker(command, true)新建一个线程,并将任务(command)添加到该线程中;然后,启动该线程从而执行任务。 if (workerCountOf(c) < corePoolSize) { if (addWorker(command, true)) return; c = ctl.get(); } - // 2.如果当前之行的任务数量大于等于 corePoolSize 的时候就会走到这里 + // 2.如果当前执行的任务数量大于等于 corePoolSize 的时候就会走到这里 // 通过 isRunning 方法判断线程池状态,线程池处于 RUNNING 状态才会被并且队列可以加入任务,该任务才会被加入进去 if (isRunning(c) && workQueue.offer(command)) { int recheck = ctl.get(); @@ -808,7 +808,7 @@ pool-1-thread-1 End. Time = Tue Nov 12 20:59:54 CST 2019 没搞懂的话,也没关系,可以看看我的分析: -> 我们在代码中模拟了 10 个任务,我们配置的核心线程数为 5 、等待队列容量为 100 ,所以每次只可能存在 5 个任务同时执行,剩下的 5 个任务会被放到等待队列中去。当前的 5 个任务之行完成后,才会之行剩下的 5 个任务。 +> 我们在代码中模拟了 10 个任务,我们配置的核心线程数为 5 、等待队列容量为 100 ,所以每次只可能存在 5 个任务同时执行,剩下的 5 个任务会被放到等待队列中去。当前的 5 个任务执行完成后,才会执行剩下的 5 个任务。 ## 5. Atomic 原子类