Весеннее выражение крон - действительно ли это крон? - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь реплицировать cron Linux в Spring с расписанием cron.

Я хочу запускать свою задачу каждые 10 секунд, а ниже приведен пример кода.

@Scheduled(cron = "0/10 * * * * *")
public void task() throws InterruptedException {
    System.out.println("Scheduler started!!!" + new Date());
    Thread.sleep(60000);
}

Я специально добавил Thread.sleep(60000), потому что моя задача может занять больше времени.

Что я ожидал от приведенного выше кода, так это то, что задача будет выполняться каждые 10 секунд, но это не так. Задержка в выполнении следующего задания составила 1 мин 10 с.

Ниже вывод, который я получил:

Scheduler started!!!Tue May 08 21:15:50 GMT+05:30 2018
Scheduler started!!!Tue May 08 21:17:00 GMT+05:30 2018

То, что я вижу, это поведение точно такое же, как у * java 1014 *.

Как выражение cron весны отличается от таймера Java? Есть ли вероятность того, что он может работать как Linux cron. Значит, хотя предыдущая задача была запущена, запустите новую задачу?

1 Ответ

0 голосов
/ 08 мая 2018
...