2009-12-21 57 views
0

我可以重載Java定時器任務讓它每天執行一次嗎?Java TimerTask執行週期

Timer timer = new Timer(true); 
timer.schedule(new SendEmailTask(), 6000000, 86400000); //schedule to run one day? 

如果我在以下期限實施,是否沒有問題?

回答

1

計時器將在延遲6000000 ms後執行SendEmailTask(),然後從應用程序開始運行時開始每86400000 ms執行一次。

你不會超載定時器你只是使用一個實例一個定時器。

不用說,如果你的應用程序沒有運行你的計時器事件也不會執行。

0

您是否試圖讓計時器每天在同一時間運行一次?如果是這樣,嘗試Timer.scheduleAtFixedRate(該Timer.schedule方法將以前到期之後過期指定period; scheduleAtFixedRate初始延遲期滿後指定period

+0

嗨, 這是我想要做的。我想我的定時器。任務每天在同一天運行一次 那麼,如果我使用scheduleAtFixedrate,即使我的週期相當於一天,也不會有問題嗎? 即使我有問題,我是否會遇到任何問題一個很有價值的時期? – 2009-12-21 07:46:01

+0

據我所知java.util.Timer應該可以工作很長時間。 – Ash 2009-12-21 08:24:56

+0

Hi Ash和Alon,非常感謝您抽出時間回答我的問題... – 2009-12-22 00:26:46