多线程异步执行
框架内已集成:ThreadPoolTaskExecutor
异步两种实现方式:
-
手动注入
ThreadPoolTaskExecutor线程池执行方式。栗子:
在接口方法中使用:
@Autowiredprivate ThreadPoolTaskExecutor executor;@GetMapping("asyncExecute")public Result asyncExecute(){log.info("<-主线程");executor.execute(()-> {log.info("<-异步线程");// 常用:微信消息通知、发送短信等});return R.OK();} -
使用
@Async注解在实现类中使用: 当调用此方法时则会自定使用线程池去执行该方法。
@Async@Overridepublic void sendSms(String... phoneNums) {Console.log("执行逻辑...");for (String phoneNum : phoneNums) {System.out.println("正在发送短信 to \'"+phoneNum+"\'");}}