私はおそらくただのばかです - 長い一日でした! Quartz への最初の進出で何かを誤解してしまいました...
このコードを考えると:
DateTime dt = new DateTime();
dt = dt.withDayOfMonth(20);
Calendar cal = new CronCalendar("0 0/10 * * * ?" );
long start = dt.getMillis();
System.out.println("Starting at " + start);
long end = start + 10;
long current = start;
int i = 0;
while (current < end) {
if (i > 0) {
System.out.println(i + ":" + current);
}
long next = cal.getNextIncludedTime(current);
current = next;
i++;
}
時間枠は 10 ミリ秒で、カレンダーに含まれる時間は 10 分離れているため、出力に含まれる時間は最大で 1 つになると思います。
しかし、私がそれを実行すると:
Starting at 1250796103004
1:1250796103005
2:1250796103006
3:1250796103007
4:1250796103008
5:1250796103009
6:1250796103010
7:1250796103011
8:1250796103012
9:1250796103013
助けてください!