Java循环任务,日期问题
我正在尝试在java中设置一个计划任务,每天运行一次。
问题是它只在第一天运行。
有什么想法吗?
谢谢
log.info("Schdualing midnight task");
Timer timer = new Timer();
Calendar date = Calendar.getInstance();
date.set(Calendar.HOUR_OF_DAY, 23);
date.set(Calendar.MINUTE, 30);
date.set(Calendar.SECOND, 0);
timer.schedule(new EndOfDayRatesTimerTask(new MidnightQuotesEvent()),
date.getTime());
I am trying to set a scheduled task in java for running once in a day.
The problem is that it is running only in the first day.
Any idea y?
Thanks
log.info("Schdualing midnight task");
Timer timer = new Timer();
Calendar date = Calendar.getInstance();
date.set(Calendar.HOUR_OF_DAY, 23);
date.set(Calendar.MINUTE, 30);
date.set(Calendar.SECOND, 0);
timer.schedule(new EndOfDayRatesTimerTask(new MidnightQuotesEvent()),
date.getTime());
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用 scheduleAtFixedRate()。例如,
Use scheduleAtFixedRate() instead. For example,
您正在使用
schedule()
的单次版本。有一个版本需要一个额外的参数来指定后续执行之间的延迟。You are using the single-shot version of
schedule()
. There's a version that takes an extra parameter to specify the delay between subsequent executions.