我正在使用基于注释的事件侦听器,我也将其标记为TaskExecutor
。 (请参见Asynchronous Listeners)。
Spring使用哪个AsyncConfigurer
实现来满足这些请求? The documentation读为:
默认情况下,在方法上指定@Async时,使用的执行程序是启用异步支持时配置的执行程序,即如果使用XML或AsyncConfigurer实现(如果有),则为“注释驱动”元素。 / p>
问题在于我根本没有完成任何任何配置,因此我不确定SimpleAsyncTaskExecutor
的实现是从什么开始的。
我的猜测是,我们正在处理import numpy as np
import math
import time
start_time = time.time()
Omg = 0
U = np.zeros(3)
V = np.zeros(3)
U = [0,0,1]
V = [0,1,0]
for i in range(0, 10000000):
Omg = Omg + np.sign(np.dot(U, V)) + np.cross(U,V) * math.asin(1/(i+1))
print(Omg)
print("--- %s seconds ---" % (time.time() - start_time))
。
答案 0 :(得分:0)
我在the documentation中找到了EnableAsync
的答案:
默认情况下,Spring将搜索关联的线程池定义:上下文中的唯一TaskExecutor bean,否则为名为“ taskExecutor”的Executor bean。如果两者都不能解决,则将使用SimpleAsyncTaskExecutor处理异步方法调用。
因此,它是SimpleAsyncTaskExecutor
。