我正在使用 TimerTask 为日常运行安排一个线程。这是代码。
private void scheduleDailyProcess() {
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, 1);
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 5);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
Timer timer = new Timer();
int period = 24 * 60 * 60 * 1000; //24 hours
timer.schedule(new DailyProcess(), c.getTime(), period );
}
我希望线程在每天上午 00:05 运行。但是我注意到线程以 8 秒的未指定延迟开始。
我在代码中遗漏了什么吗?还是 TimerTask 有问题?
DailyProcess 内没有延迟。