/**
* 阻塞队列线程池,队列满了不会抛异常,会阻塞
*/
private ThreadPoolExecutor executor = new ThreadPoolExecutor(64, 64,
0L, TimeUnit.MILLISECONDS,
new ArrayBlockingQueue<>(16),
ThreadFactoryBuilder.create().setNamePrefix("任务-").build(),
(runnable, pool) -> {
try {
pool.getQueue().put(runnable);
} catch (InterruptedException e) {
log.warn("pool.getQueue().put(runnable):{}", e.getMessage(), e);
}
}
);
executor.submit(() -> runMethod());
线程池创建,任务执行
最新推荐文章于 2024-09-19 12:04:03 发布
本文介绍了如何使用Java创建一个阻塞队列线程池,当队列满时,新任务会被阻塞,而不是抛出异常。示例中展示了线程池配置,包括核心线程数、最大线程数、线程存活时间、工作队列以及拒绝策略的自定义处理。同时,还展示了如何提交任务到线程池执行。
摘要由CSDN通过智能技术生成