使用Servlet 3.0,我们可以创建异步操作的任务,从而允许处理请求的线程返回到现在可以用来处理另一个请求的容器。如果我们使用线程池来配置可用于异步请求的线程数,那么应该如何调整/我们应该考虑哪些参数?如何使用异步线程调整/分析线程池配置?
它也可以告诉春季抢从ForkJoin池中的线程并做处理这样的:(Taken from this tutorial:
logger.info("Request received");
DeferredResult<String> deferredResult = new DeferredResult<>();
CompletableFuture.supplyAsync(taskService::execute)
.whenCompleteAsync((result, throwable) -> deferredResult.setResult(result));
logger.info("Servlet thread released");
我们什么时候应该这样做主场迎战采取与托管线程池的方法Callable
?几乎看起来唯一的区别是,在一种情况下,我们可能想要配置Java 8的commonPool,并且Spring Boot会从那里抓取线程来完成上述类型的CompleteableFuture处理,而在另一个中,似乎我们会配置一些类型的ExecutorService for Spring几乎看起来像这样的方法没有区别吗?