我在 Spring Boot 中配置了一个执行器服务,如下所示:
@Configuration
@PropertySource({ "classpath:executor.properties" })
public class ExecutorServiceConfig {
@Value("${"executor.thread.count"}")
private int executorThreadCount;
@Bean("executorThreadPool")
public ThreadPoolExecutor cachedThreadPool() {
return new ThreadPoolExecutor(executorThreadCount, executorThreadCount, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
}
}
该应用程序部署在一个独立的 Tomcat 实例上。当Tomcat服务器关闭时,我发现队列中还有未完成的任务。结果,我会丢失数据。有没有办法让我在这个执行程序服务上调用 awaitTermination 以便它有机会完成队列中的内容?谢谢!
森林海
有只小跳蛙
相关分类