我正在尝试在 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());
最佳答案
使用scheduleAtFixedRate()反而。例如,
TimerTask task = new EndOfDayRatesTimerTask(new MidnightQuotesEvent());
timer.scheduleAtFixedRate(task, date.getTime(), TimeUnit.DAYS.toMillis(1));
关于Java循环任务,日期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3452218/