Os trabalhos cron do Linux são executados sequencialmente ou em paralelo?

9

Digamos que eu crie duas tarefas agendadas:

  • Cron Job A, roda todos os dias às 8:00
  • Cron Job B, é executado todos os dias às 8h05

No entanto, o Cron Job A leva 12 horas para ser executado (não pergunte por que, este é um exemplo).

O Cron Job B será executado às 8h05 ou os cron apenas serão executados um de cada vez?

Se um Cron Job que estava sendo executado anteriormente foi interrompido por um System Restart / Reboot, ele será retomado / executado novamente após a inicialização subsequente?

    
por Adam B 13.09.2013 / 09:20

3 respostas

10

Sim, o cron job B será executado às 8:05. Você também pode executar mais de um trabalho de longa duração às 8:00 etc.

No entanto, o trabalho não será retomado após a reinicialização. Se você precisar de algo assim, reescreva seu trabalho com um wrapper que seja agendado com frequência e verifique se há algo novo para fazer ou algo para continuar. Isso dependerá da tarefa que você deseja fazer, obviamente.

    
por 13.09.2013 / 09:22
4

Eles são executados em paralelo. Cron Job B será executado às 8h05.

    
por 13.09.2013 / 20:45
1

Cada cron em seu sistema é isolado um do outro, mas o tempo de execução da tarefa cron depende apenas da alocação de recursos do sistema e do trabalho para o qual Cron foi agendado.

    
por 13.09.2013 / 09:28

Tags