在SpringBoot中實(shí)現(xiàn)異步任務(wù)執(zhí)行可以使用@Async
注解來標(biāo)識一個(gè)方法是異步執(zhí)行的。具體步驟如下:
@EnableAsync
注解,啟用異步方法的支持。@SpringBootApplication
@EnableAsync
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
@Async
注解。@Service
public class MyService {
@Async
public void asyncTask() {
// 異步任務(wù)的邏輯代碼
}
}
@RestController
public class MyController {
@Autowired
private MyService myService;
@GetMapping("/async-task")
public String asyncTask() {
myService.asyncTask();
return "Async task started";
}
}
這樣就可以實(shí)現(xiàn)在SpringBoot中異步執(zhí)行任務(wù)了。需要注意的是,異步任務(wù)的執(zhí)行是通過線程池來實(shí)現(xiàn)的,默認(rèn)情況下SpringBoot會自動配置一個(gè)線程池用于執(zhí)行異步任務(wù),也可以自定義線程池配置。