Spring @Async 无法处理匿名 class
Spring @Async not working on an anonymous class
我在 Anonymous class 的方法中使用 @Async 标签。 Spring AOP 是否支持这个:
private void scheduleProcessing(final SomePojo somepojo) {
taskScheduler.schedule(new Runnable() {
@Override
@Async("myThreadPoolTaskExecutor")
public void run() {
// biz logic
}
}, 20, TimeUnit.SECONDS);
}
显然,用 spring 注释表示的方法,如 @Async、@Transactional 等,应该从 class(AOP 代理)外部调用。这里 运行 将在线程启动时在内部某处调用,因此不会对方法应用异步性。
我在 Anonymous class 的方法中使用 @Async 标签。 Spring AOP 是否支持这个:
private void scheduleProcessing(final SomePojo somepojo) {
taskScheduler.schedule(new Runnable() {
@Override
@Async("myThreadPoolTaskExecutor")
public void run() {
// biz logic
}
}, 20, TimeUnit.SECONDS);
}
显然,用 spring 注释表示的方法,如 @Async、@Transactional 等,应该从 class(AOP 代理)外部调用。这里 运行 将在线程启动时在内部某处调用,因此不会对方法应用异步性。