任务完成后,是否应该销毁@Scheduled任务线程?

时间:2019-02-15 05:18:31

标签: spring-boot scheduler

我们已经在Spring Boot应用程序中实现了计划任务,以便从MQ读取消息。 在IntelliJ中进行调试时,我看到任务的线程已启动,然后在任务完成后进入等待状态。

这是正常现象还是在任务完成后应该停止/销毁线程? 另外,我们必须手动执行此操作还是由Spring负责(并且任务代码中的某些内容阻止了此操作)

1 个答案:

答案 0 :(得分:0)

Spring使用线程池来管理调度程序。来自Spring docs on Scheduling

  

如果不提供pool-size属性,则默认线程池只有一个线程。调度程序没有其他配置选项。

线程正在“等待”,因为它们又回到了线程池中。因此,Spring为我们解决了这一问题。根据{{​​3}},只有在使用多个调度程序时,才需要配置线程池。