# MyThreadPool **Repository Path**: zxxnj/my-thread-pool ## Basic Information - **Project Name**: MyThreadPool - **Description**: JDK原生线程池扩展,增强。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-06-15 - **Last Updated**: 2024-06-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MyThreadPool #### 介绍 JDK原生线程池扩展,增强。达到最大线程数后,再添加到workQueue。 ![输入图片说明](images/%E5%9B%BE%E7%89%87.png) #### 软件架构 jdk原生线程池整体执行过程为当线程数达到coreSize时先往队列添加任务,队列满后再增加线程达到maximumPoolSize ,这种策略相对来说更适用于cpu密集型任务,如果是io密集型任务,容易堆积到队列中,像Tomcat 需要处理大量客户端请求任务,如果采用原生线程池, 一旦接受请求数量大于线程池核心线程数,这些请求就会被放入到队列中,等待核心线程处理。这样做显然降低这些请求总体处理速度,所以tomcat没采用 JDK 原生线程池。 本工程即对jdk原生池的扩展,通过自定义队列,当达到coreSize是往队列添加任务时默认拒绝,达到最大线程时,触发拒绝策略往队列添加任务,队列满后再触发真正的拒绝策略, 相对来说对jdk线程池无侵入性。 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request