timer.scheduleAtFixedRate(function_to_execute, 0, 5000);


我已经阅读了上面的示例,但是我想在特定的日期和时间(例如2013/01 / 13,13:15pm)启动该功能。

如何设置timer.scheduleAtFixedRate参数?

非常感谢。

最佳答案

scheduleAtFixedRate方法已重载。

首先:

public void scheduleAtFixedRate(TimerTask task,
                                Date firstTime,
                                long period)


第二(您的代码使用了这个):

public void scheduleAtFixedRate(TimerTask task,
                                long delay,
                                long period)


因此,要在特定时间运行,可以将pass Date对象用作第二个参数。

Date date = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss a", Locale.ENGLISH).parse("2013/01/13 13:15 pm");
timer.scheduleAtFixedRate(function_to_execute, date, 5000);


更多:Timer.scheduleAtFixedRate

08-27 13:55