springboot异步任务如何调用
在Spring Boot中,您可使用@Async
注解来标记异步任务方法,并使用@EnableAsync
注解来启用异步任务功能。
下面是一个示例代码:
@EnableAsync
注解,以启用异步任务功能:@SpringBootApplication
@EnableAsync
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
@Async
注解标纪要异步履行的方法:@Component
public class MyAsyncTask {
@Async
public void doAsyncTask() {
// 异步任务的具体逻辑
// ...
}
}
@Component
public class MyOtherClass {
@Autowired
private MyAsyncTask myAsyncTask;
public void doSomething() {
// 调用异步任务方法
myAsyncTask.doAsyncTask();
// 继续履行其他操作
// ...
}
}
当调用doAsyncTask
方法时,它将在新的线程中异步履行,而不会阻塞主线程。
请注意,为了使异步任务正常工作,您还需要在利用的配置文件中添加以下配置:
spring.task.execution.pool.core-size=5
spring.task.execution.pool.max-size=10
spring.task.execution.pool.queue-capacity=100
这些配置项用于设置线程池的核心线程数、最大线程数和队列容量。您可以根据实际需求进行调剂。
TOP