【Spring】@Async & @Schedule

发布时间 2024-01-09 10:43:23作者: 飞翔在天

代码位置: spring-context\src\main\java\org\springframework\scheduling\annotation

实现原理: 有对应的BeanPostProcessor实现类

@Async + @EnableAsync

1. 在方法上使用@Async注解,申明该方法是一个异步任务;
2. 在类上面使用@Async注解,申明该类中的所有方法都是异步任务;
3. 使用此注解的方法的类对象,必须是spring管理下的bean对象;
4. Spring Boot启动类中增加@EnableAsync

a.@Async注解在使用时,如果不指定线程池的名称,则使用Spring默认的线程池,Spring默认的线程池为SimpleAsyncTaskExecutor。
b.方法上一旦标记了@Async注解,当其它线程调用这个方法时,就会开启一个新的子线程去异步处理该业务逻辑。

测试:https://blog.csdn.net/qq_22076345/article/details/82194482