Выполняются ли задания cron в Linux последовательно или параллельно?

Выполняются ли задания cron в Linux последовательно или параллельно?

Допустим, я создаю два задания cron:

  • Задача Cron A запускается каждый день в 8:00 утра.
  • Cron Job B, запускается каждый день в 8:05 утра.

Однако выполнение задания Cron A занимает 12 часов (не спрашивайте почему, это пример).

Будет ли задание Cron B запускаться в 8:05 утра или задания cron будут выполняться только по одному за раз?

Если ранее запущенное задание Cron было прервано перезапуском/перезагрузкой системы, возобновится ли оно/запустится снова после последующей загрузки?

решение1

Да, cron job B будет запущен в 8:05. Вы также можете запустить более одной длительной задачи в 8:00 и т. д.

Однако после перезагрузки работа не возобновится. Если вам нужно что-то подобное, перепишите свою работу с помощью оболочки, которая часто планируется и проверяет, есть ли у нее что-то новое для выполнения или что-то еще для продолжения. Это будет зависеть от задачи, которую вы хотите выполнить, очевидно.

решение2

Они запускаются параллельно. Cron Job B будет запущен в 8:05 утра.

решение3

Каждый cron в вашей системе изолирован друг от друга, но время выполнения задания cron будет зависеть исключительно от распределения системных ресурсов и работы, для которой был запланирован Cron.

Связанный контент