2009-12-21 58 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