1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

add 拿来即用的线程池最佳实践 to readme

This commit is contained in:
shuang.kou 2020-06-11 08:53:00 +08:00
parent 13e117aa52
commit bb30fb9dad
2 changed files with 3 additions and 3 deletions

View File

@ -135,7 +135,7 @@ Github用户如果访问速度缓慢的话可以转移到[码云](https://git
**必备知识点:** **必备知识点:**
1. [并发容器总结](docs/java/Multithread/并发容器总结.md) 1. [并发容器总结](docs/java/Multithread/并发容器总结.md)
2. **[Java线程池学习总结](./docs/java/Multithread/java线程池学习总结.md)** 2. **线程池**[Java线程池学习总结](./docs/java/Multithread/java线程池学习总结.md)、[拿来即用的线程池最佳实践](./docs/java/Multithread/best-practice-of-threadpool.md)
3. [乐观锁与悲观锁](docs/essential-content-for-interview/面试必备之乐观锁与悲观锁.md) 3. [乐观锁与悲观锁](docs/essential-content-for-interview/面试必备之乐观锁与悲观锁.md)
4. [JUC 中的 Atomic 原子类总结](docs/java/Multithread/Atomic.md) 4. [JUC 中的 Atomic 原子类总结](docs/java/Multithread/Atomic.md)
5. [AQS 原理以及 AQS 同步组件总结](docs/java/Multithread/AQS.md) 5. [AQS 原理以及 AQS 同步组件总结](docs/java/Multithread/AQS.md)

View File

@ -145,7 +145,7 @@ Finished all threads
你可以通过一些手段来检测线程池的运行状态比如 SpringBoot 中的 Actuator 组件。 你可以通过一些手段来检测线程池的运行状态比如 SpringBoot 中的 Actuator 组件。
除此之外,我们还可以利用 `ThreadPoolExecutor` 的相关 API做一个简陋的监控。从下图可以看出 `ThreadPoolExecutor`提供了线程池当前的线程数和活跃线程数、已经执行完成的任务数、正在排队中的任务数等等。 除此之外,我们还可以利用 `ThreadPoolExecutor` 的相关 API做一个简陋的监控。从下图可以看出 `ThreadPoolExecutor`提供了获取线程池当前的线程数和活跃线程数、已经执行完成的任务数、正在排队中的任务数等等。
![](https://imgkr.cn-bj.ufileos.com/ddf22709-bff5-45b4-acb7-a3f2e6798608.png) ![](https://imgkr.cn-bj.ufileos.com/ddf22709-bff5-45b4-acb7-a3f2e6798608.png)
@ -271,7 +271,7 @@ public final class NamingThreadFactory implements ThreadFactory {
**如何判断是 CPU 密集任务还是 IO 密集任务?** **如何判断是 CPU 密集任务还是 IO 密集任务?**
CPU 密集型简单理解就是利用 CPU 计算能力的任务比如你在内存中对大量数据进行排序。凡涉及到网络读取,文件读取这类都是 IO 密集型,这类任务的特点是 CPU 计算耗费时间相比于等待 IO 操作完成的时间来说很少,大部分时间都花在了等待 IO 操作完成上。 CPU 密集型简单理解就是利用 CPU 计算能力的任务比如你在内存中对大量数据进行排序。凡涉及到网络读取,文件读取这类都是 IO 密集型,这类任务的特点是 CPU 计算耗费时间相比于等待 IO 操作完成的时间来说很少,大部分时间都花在了等待 IO 操作完成上。
#### 美团的骚操作 #### 美团的骚操作