吉安感知网项目-后端
xiebin
2026-01-06 d207a86cdf1ab52ef8cb7cd83bad8fceab8038cf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package org.sxkj.resource.download.comfig;
 
import jodd.util.concurrent.ThreadFactoryBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
 
import java.util.concurrent.ExecutorService;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
 
/**
 * @Description TODO 下载任务线程池配置
 * @Author AIX
 * @Date 2025/8/5 13:48
 * @Version 1.0
 */
@Configuration
public class ThreadPoolConfig {
 
    @Bean("downloadTaskExecutor")
    public ExecutorService downloadTaskExecutor() {
        return new ThreadPoolExecutor(
            // 核心线程数
            8,
            // 最大线程数
            32,
            60L, TimeUnit.SECONDS,
            // 队列大小
            new LinkedBlockingQueue<>(100),
            new ThreadFactoryBuilder().setNameFormat("download-task-%d").get(),
            // 拒绝策略
            new ThreadPoolExecutor.CallerRunsPolicy()
        );
    }
 
}