Java 線程池的正確創建方式

Java 線程池的正確創建方式

@Component
public class TdtExecutor {

    public ExecutorService getExecutor(String threadPrefix, int threadCount) {
        ThreadFactory threadFactory = new ThreadFactoryBuilder().setNameFormat(threadPrefix "_%d").build();
        //cpu核心數
        int processors = Runtime.getRuntime().availableProcessors();
        int availableProcessors = Math.min(threadCount, processors);
        return new ThreadPoolExecutor(2 * availableProcessors, 4 * availableProcessors, 2, TimeUnit.DAYS, new LinkedBlockingQueue<>(100), threadFactory, new ThreadPoolExecutor.CallerRunsPolicy());
    }
}

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章