# spring-boot-async **Repository Path**: ouzhenxing/spring-boot-async ## Basic Information - **Project Name**: spring-boot-async - **Description**: SpringBoot使用自定义线程池、Async实现异步调用发送短信 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-08-11 - **Last Updated**: 2021-09-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ###SpringBoot线程池、@Async实现异步调用 实现场景:针对订单模块,用户购买服务类产品后,需要预约,预约成功后分别向商家、用户发送提醒短信, 考虑发送短信耗时问题,使用异步调用实现发送短信 ####自定义线程池,配置方式 1.使用xml文件配置方式 2.使用Java代码结合@Configuration进行配置(优先级高,推荐使用) ###@Async配置步骤 1.在SpringBoot主程序中配置@EnableAsync,开启异步调用功能 2.异步调用方法使用@Async(“自定义线程池名称”),自定义线程池名称在@Bean中定义 ###@Async使用失效原因有 1.异步方法使用static修饰 2.异步类没有使用@Component注解导致Spring无法扫描到异步类 3.异步方法不能与被调用的异步方法在同一类中 △ 4.类中需要使用@Autowired或@Resource等注解自动注入,不能手动new对象 5.使用SpringBoot框架必须在启动类中增加@EnableAsync注解