我可能一直在做某些错误的事情。所以,我有Spring的@Async

假设我有这段代码

@Async("poolbeanname")
Function () {
     // some code
}


我还有一个,假设我有这段代码

@Async("poolbeanname")
Function () {
     CompletableFuture.runAsync{ new Runnable ()...}
}


现在,我可以看到第二个代码,产生了一些线程,但是第一种方法似乎产生的线程不止一个?

最佳答案

要启用使用@Async,您应该使用@EnableAsync


  让我们开始通过Java配置启用异步处理-只需将@EnableAsync添加到配置类中即可:

@Configuration
@EnableAsync
public class SpringAsyncConfig { ... }



并且您必须使用从其他类调用的public方法:


  @Async有两个限制:
  
  
  它只能应用于公共方法
  自我调用–从同一个类中调用async方法–将不起作用

07-26 09:24