Шаблон Cron4j, соответствующий точному часу, но не должен

Пожалуйста, рассмотрите следующий код

String pattern = "*/17 * * * *";
Date d = new Date();
for (int i = 0; i < 10; i++) {
      System.out.println("Start: " + d + ", " + (d = new Predictor(pattern, d).nextMatchingDate()));
}

Это приводит к следующему примеру (я поставил время, которое я не ожидал, в скобках):

Start: Tue Jun 11 12:54:48 GMT+02:00 2013, Tue Jun 11 (13:00:00) GMT+02:00 2013
Start: Tue Jun 11 13:00:00 GMT+02:00 2013, Tue Jun 11 13:17:00 GMT+02:00 2013
Start: Tue Jun 11 13:17:00 GMT+02:00 2013, Tue Jun 11 13:34:00 GMT+02:00 2013
Start: Tue Jun 11 13:34:00 GMT+02:00 2013, Tue Jun 11 13:51:00 GMT+02:00 2013
Start: Tue Jun 11 13:51:00 GMT+02:00 2013, Tue Jun 11 (14:00:00) GMT+02:00 2013
Start: Tue Jun 11 14:00:00 GMT+02:00 2013, Tue Jun 11 14:17:00 GMT+02:00 2013
Start: Tue Jun 11 14:17:00 GMT+02:00 2013, Tue Jun 11 14:34:00 GMT+02:00 2013
Start: Tue Jun 11 14:34:00 GMT+02:00 2013, Tue Jun 11 14:51:00 GMT+02:00 2013
Start: Tue Jun 11 14:51:00 GMT+02:00 2013, Tue Jun 11 (15:00:00) GMT+02:00 2013
Start: Tue Jun 11 15:00:00 GMT+02:00 2013, Tue Jun 11 15:17:00 GMT+02:00 2013

Хотя шаблон настроен так, чтобы соответствовать минутам, кратным 17, если это правильный способ его описания, предиктор считает точный час (13:00, 14:00, 15:00 и т. Д.) Действительной датой следующего соответствия!

Мои вопросы:

  • Это поведение действительно? Если да, то почему это так?
  • Как я могу предотвратить это поведение? Я имею в виду, как я могу запретить предиктору рассматривать точный час как совпадающее время, если поле времени (т. Е. Минуты, часы, дни, день недели) не делится на его максимальное значение (т. Е. 60, 24, 30 или 31, 7)
  • Это действительно так с расписанием Unix Cron?

Спасибо.

1 ответ

В данном контексте 0 а также * взаимозаменяемы. Таким образом, он будет работать в течение часа, а затем с 17-минутными интервалами в течение часа.

Чтобы начать в 17 минут после часа и затем в течение этого времени, попробуйте этот шаблон: 17-59/17 * * * *

Другие вопросы по тегам