quartz肯定启动了一些线程来处理JOB。
这就需要你在tomcat关闭时手动shutdown掉这些线程。
你可以在ServletContextListener里去处理它。
但是scheduler.shutdown()并不是立即停止,是等待工作完成后才能停止,它需要一些时间。
你最好在scheduler.shutdown()后面紧跟Thread.sleep(2000),否则在scheduler还未完全关闭线程池时,tomcat已经完全关闭,并报出线程未停止导致内存泄漏的问题。
quartz肯定启动了一些线程来处理JOB。
这就需要你在tomcat关闭时手动shutdown掉这些线程。
你可以在ServletContextListener里去处理它。
但是scheduler.shutdown()并不是立即停止,是等待工作完成后才能停止,它需要一些时间。
你最好在scheduler.shutdown()后面紧跟Thread.sleep(2000),否则在scheduler还未完全关闭线程池时,tomcat已经完全关闭,并报出线程未停止导致内存泄漏的问题。