Skip to content

Commit bb30fb9

Browse files
committed
add 拿来即用的线程池最佳实践 to readme
1 parent 13e117a commit bb30fb9

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ Github用户如果访问速度缓慢的话,可以转移到[码云](https://git
135135
**必备知识点:**
136136

137137
1. [并发容器总结](docs/java/Multithread/并发容器总结.md)
138-
2. **[Java线程池学习总结](./docs/java/Multithread/java线程池学习总结.md)**
138+
2. **线程池**[Java线程池学习总结](./docs/java/Multithread/java线程池学习总结.md)[拿来即用的线程池最佳实践](./docs/java/Multithread/best-practice-of-threadpool.md)
139139
3. [乐观锁与悲观锁](docs/essential-content-for-interview/面试必备之乐观锁与悲观锁.md)
140140
4. [JUC 中的 Atomic 原子类总结](docs/java/Multithread/Atomic.md)
141141
5. [AQS 原理以及 AQS 同步组件总结](docs/java/Multithread/AQS.md)

docs/java/Multithread/best-practice-of-threadpool.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ Finished all threads
145145

146146
你可以通过一些手段来检测线程池的运行状态比如 SpringBoot 中的 Actuator 组件。
147147

148-
除此之外,我们还可以利用 `ThreadPoolExecutor` 的相关 API做一个简陋的监控。从下图可以看出, `ThreadPoolExecutor`提供了线程池当前的线程数和活跃线程数、已经执行完成的任务数、正在排队中的任务数等等。
148+
除此之外,我们还可以利用 `ThreadPoolExecutor` 的相关 API做一个简陋的监控。从下图可以看出, `ThreadPoolExecutor`提供了获取线程池当前的线程数和活跃线程数、已经执行完成的任务数、正在排队中的任务数等等。
149149

150150
![](https://imgkr.cn-bj.ufileos.com/ddf22709-bff5-45b4-acb7-a3f2e6798608.png)
151151

@@ -271,7 +271,7 @@ public final class NamingThreadFactory implements ThreadFactory {
271271

272272
**如何判断是 CPU 密集任务还是 IO 密集任务?**
273273

274-
CPU 密集型简单理解就是利用 CPU 计算能力的任务比如你在内存中对大量数据进行排序。单凡涉及到网络读取,文件读取这类都是 IO 密集型,这类任务的特点是 CPU 计算耗费时间相比于等待 IO 操作完成的时间来说很少,大部分时间都花在了等待 IO 操作完成上。
274+
CPU 密集型简单理解就是利用 CPU 计算能力的任务比如你在内存中对大量数据进行排序。但凡涉及到网络读取,文件读取这类都是 IO 密集型,这类任务的特点是 CPU 计算耗费时间相比于等待 IO 操作完成的时间来说很少,大部分时间都花在了等待 IO 操作完成上。
275275

276276
#### 美团的骚操作
277277

0 commit comments

Comments
 (0)