玩转springboot之springboot异步执行

springboot异步执行

使用@EnableAsync开启异步执行

在接口方法上使用@Async注解进行标注,该接口是一个异步接口

自定义异步线程执行器

@Configuration
public class CustomAsyncConfigurer implements AsyncConfigurer {

    @Override
    public Executor getAsyncExecutor() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(4);
        executor.setMaxPoolSize(20);
        executor.setQueueCapacity(20);
        executor.setKeepAliveSeconds(60);
        executor.setThreadNamePrefix("myThreadPool-");
        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
        executor.initialize();
        return executor;
    }

    @Override
    public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {
        return new AsyncUncaughtExceptionHandler() {
            @Override
            public void handleUncaughtException(Throwable ex, Method method, Object... params) {
                System.out.println("出现异常");
                ex.printStackTrace();
            }
        };
    }
}

https://zhhll.icu/2021/框架/springboot/基础/8.springboot异步执行/

本文由mdnice多平台发布

相关推荐
FreemanGordon28 分钟前
Java volatile 关键字
java
北京_宏哥29 分钟前
《手把手教你》系列基础篇(九十三)-java+ selenium自动化测试-框架设计基础-POM设计模式实现-上篇(详解教程)
java·前端·selenium
北京_宏哥37 分钟前
《手把手教你》系列基础篇(九十二)-java+ selenium自动化测试-框架设计基础-POM设计模式简介(详解教程)
java·selenium·前端工程化
当归10241 小时前
微服务与消息队列RabbitMQ
java·微服务
Lx3521 小时前
《从头开始学java,一天一个知识点》之:循环结构:for与while循环的使用场景
java·后端
Cache技术分享1 小时前
15. Java 如何声明一个变量来引用数组
java·前端
雷渊1 小时前
深入分析理解mysql的MVCC
java·数据库·面试
知其然亦知其所以然1 小时前
Java 高级面试题:Lock 到底比 synchronized 强在哪?
java·后端·面试
风象南1 小时前
Spring Boot 的 20个实用技巧
java·spring boot
Java陈序员1 小时前
IDEA 必备插件!轻松搞定 JSON 格式化!
java·json·intellij idea