线程池:自定义线程池

2023-12-30 08:28:01

public class Thread11 {

public static void main(String[] args) {

// 自定义线程池:池的大小如何设置

// 策略:CPU密集型:几核、就是几、可以保持cpu的效率最高

// 获取CPU的核数

System.out.println(Runtime.getRuntime().availableProcessors());

ExecutorService threadPool = new ThreadPoolExecutor(

2,

5,

1,

TimeUnit.SECONDS,

new LinkedBlockingQueue<>(3),

Executors.defaultThreadFactory(),

new ThreadPoolExecutor.AbortPolicy()

);

// 最大承载:Queue + max、超过报异常

try {

for (int i = 1; i <= 9; i++) {

threadPool.execute(() -> {

System.out.println(Thread.currentThread().getName() + "ok");

});

}

} finally {

threadPool.shutdown();

}

}

}

文章来源:https://blog.csdn.net/u010605984/article/details/135212896
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。