我通过this tutorial解释了使用Callable
和DeferredResult
与servlet 3.0规范和Spring之间的区别。对于Callable
s spring管理线程,所以我假设我们需要配置一个线程池?如何为Spring Boot配置?
答案 0 :(得分:2)
WebMvcConfigurationSupport.configureAsyncSupport()用于设置异步请求处理。 AsyncSupportConfigurer为返回Callable
和DeferredResult
的所有控制器方法提供配置。可以使用适当的AsyncTaskExecutor
实现(例如ThreadPoolTaskExecutor
)通过AsyncSupportConfigurer.setTaskExecutor()配置底层线程池。通过返回WebAsyncTask
代替Callable
,还可以按请求更新此配置。链接的javadocs更详细地描述了所有这些内容。