fix(scheduler): 修复定时任务固定频率调度时间计算问题

- 在固定频率调度中清除毫秒精度并增加一秒延迟
- 修正了从指定时间开始的触发间隔计算逻辑
- 避免了时间计算中的毫秒误差累积问题
3.4.0-release
xuxueli 3 months ago
parent c480303e39
commit f93d4f2820

@ -2,6 +2,7 @@ package com.xxl.job.admin.scheduler.type.strategy;
import com.xxl.job.admin.model.XxlJobInfo;
import com.xxl.job.admin.scheduler.type.ScheduleType;
import com.xxl.tool.core.DateTool;
import java.util.Date;
@ -15,7 +16,8 @@ public class FixRateScheduleType extends ScheduleType {
// fix rate delay, after last-trigger-time
return nextTriggerTime;
} else {
// fix rate delay, after fromTime
// fix rate delay, after fromTime (clear ms, second +1)
fromTime = DateTool.setMilliseconds(DateTool.addSeconds(fromTime, 1), 0);
return new Date(fromTime.getTime() + Long.parseLong(jobInfo.getScheduleConf()) * 1000L);
}
}

Loading…
Cancel
Save