簡體   English   中英

熱部署后,執行程序線程繼續運行

[英]Executor thread keeps running after hot deploy

有沒有辦法知道戰爭何時被熱部署,所以我可以關閉正在運行計划任務的舊執行器? 我正在使用jboss 6,我有一個預定的線程池,它在后台定期更新數據。 當我熱部署時,該線程池沒有關閉並且new啟動,所以我有多個預定的線程池。

感謝您的任何意見。

是的,但這取決於您啟動Executor以及您使用的技術:

  • ServletContextListener中 :在contextInitialized()啟動Executor並在contextDestroyed()中將其關閉。

  • 在servlet中,在init()啟動Executor ,用destroy()關閉它

  • 在EJB / Spring bean中:從@PostConstruct注釋的方法開始,在@PreDestroy關閉。

當然。 這取決於你如何運行這個線程。 例如,如果您從sevlet運行它,請使用servlet的destroy()方法來停止它。 如果您正在使用其應用程序上下文的Spring使用lifecicle。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM