Java 如何将特定ExecutorService与@Async一起使用?

Java 如何将特定ExecutorService与@Async一起使用?,java,spring,asynchronous,Java,Spring,Asynchronous,@Async(value=”“)可以使用执行器或任务执行器名称来运行异步进程 我的目标是使用默认的spring实现来执行@Async方法,但要有一个特定的方法@Async(value=“myExecutor”)与特定的执行器一起运行 我希望使用一个执行器,它一次只运行一个线程,并在队列中保留任何其他数据 @Bean public ExecutorService getMyTaskExecutor() { return Executors.newFixedThreadPool(1); }

@Async(value=”“)
可以使用
执行器
任务执行器
名称来运行异步进程

我的目标是使用默认的
spring
实现来执行
@Async
方法,但要有一个特定的方法
@Async(value=“myExecutor”)
与特定的执行器一起运行

我希望使用一个执行器,它一次只运行一个线程,并在队列中保留任何其他数据

@Bean
public ExecutorService getMyTaskExecutor() {
    return Executors.newFixedThreadPool(1);
}
问题:我现在如何将此
ExecutorService
应用于我的
@Async
方法

@Async(value = "myTaskExecutor")
public void myprocess() {

}

@Async(value = "asdasdasdMyTaskExecutor")
public void myprocess() {

}
问题是:无论我在这里写什么值,应用程序都会启动。因此,我无法确定此处是否应用了正确的执行者。我必须使用什么bean名称?

根据,它应该是@Async(“myTaskExecutor”)

引用文档:

name
属性可用时,确定bean名称的默认策略是使用
@bean
方法的名称

同样地,如果您的方法名为
getMyTaskExecutor
,那么您应该有
@Async(value=“getMyTaskExecutor”)
,即执行器的名称必须与bean的名称相对应,默认情况下,bean的名称是
@bean
注释方法的名称