springboot怎么使用@Async
时间: 2024-05-10 12:13:15 浏览: 133
springboot中@Async默认线程池导致OOM问题
5星 · 资源好评率100%
@Async是Spring框架中提供的一个注解,用于实现异步调用方法。在Spring Boot中,使用@Async非常简单,只需要遵循以下步骤:
1. 在启动类上添加@EnableAsync注解,开启异步调用功能。
2. 在需要异步调用的方法上添加@Async注解。
3. 调用该方法时,该方法将会在新的线程中运行,不会阻塞当前线程。
下面是一个简单的示例代码,演示了如何在Spring Boot中使用@Async注解:
```java
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@Service
public class MyService {
@Async
public void asyncMethod() {
// 异步方法逻辑
}
}
```
在上面的代码中,我们使用@Service注解将MyService类声明为Spring Bean,并在其中定义了一个异步方法asyncMethod()。通过在该方法上添加@Async注解,告诉Spring该方法需要异步执行。当我们调用该方法时,它将会在新的线程中运行。
需要注意的是,在使用@Async注解时,需要确保Spring应用程序上下文中存在一个TaskExecutor bean,否则异步调用将会失败。如果没有自定义配置,Spring Boot将使用默认的SimpleAsyncTaskExecutor。
阅读全文