2015-01-16 74 views

回答

-1

如果由於服務器重新啓動/崩潰而導致JVM關閉,那麼任務也將消失。這就是它應該如何工作的。 您需要找到永久存儲信息並在啓動時重新創建任務的方法。

+0

另一種方法是使用定時服務而不是執行服務,但在這種情況下,我不確定是否有可能啓動多個工作線程。我讀過定時服務任務都安排在一個線程上。或者是否有可能爲定時服務提供線程池? – Jojo

+0

這將是一個不同的問題。那些服務器重啓後也會消失。 –

+0

對不起,如果我必須糾正你,那是不正確的。他們在重新啓動後仍然存在,但不能重新部署。來自Java EE教程:'定時器默認是持久的。如果服務器關閉或崩潰,持久性定時器將被保存並在服務器重新啓動時再次變爲活動狀態。如果持久計時器在服務器關閉時到期,那麼當服務器重新啓動時,容器將調用@Timeout方法。# – Jojo