As tarefas agendadas no Windows Server 2016 não são executadas após serem desabilitadas e depois habilitadas

As tarefas agendadas no Windows Server 2016 não são executadas após serem desabilitadas e depois habilitadas

Estou tendo um problema com o Agendador de Tarefas no Windows Server 2016 que não executa tarefas repetitivas depois de serem desabilitadas e reativadas.

Eu crio uma tarefa com “Triggers->Start” de cinco minutos no futuro e defino a tarefa para ser executada a cada cinco minutos. A opção “Configurações->Executar tarefa o mais rápido possível após a perda do início agendado” está marcada.

Tudo funciona bem – a tarefa é executada no horário de início agendado e depois a cada cinco minutos.

Desative a tarefa e aguarde mais de cinco minutos.

Habilite a tarefa, ela não será executada novamente.

O tempo da próxima execução continua a ser atualizado a cada cinco minutos, mas a tarefa não é executada e o tempo da última execução nunca é atualizado.

Não há entradas no histórico de tarefas depois que a tarefa é reativada e nenhum evento nos logs de eventos do Windows.

Quando o horário de início é atingido no dia seguinte, a tarefa começa a ser executada novamente, mas isso não é desejável, pois pode haver um longo atraso entre o momento em que a tarefa é reativada e o horário de início chega novamente.

Responder1

A tarefa foi definida para ser executada todos os dias e repetida indefinidamente ou diariamente. Mudei para Executar uma vez e repito indefinidamente e ele retoma a execução quando a tarefa é habilitada após ter sido desabilitada.

Acho que isso funciona porque quando configurado desta forma o agendador exibe "Depois de acionado, repita a cada 5 minutos indefinidamente." Assim, uma vez que a tarefa é acionada, ela permanece no estado "acionada" mesmo quando desabilitada, portanto, uma vez habilitada novamente, ela retoma a execução de acordo com o agendamento.

NOTA: ao configurar a tarefa pela primeira vez, o horário de início precisa ser definido no futuro para que a tarefa seja acionada pela primeira vez.

Responder2

Este é o comportamento esperado. Uma tarefa só é iniciada quando uma de suas condições de disparo é atendida. O ato de desabilitar a tarefa tem o mesmo efeito que interrompê-la. Quando isso acontecer, ele não será executado novamente até que uma condição de acionamento seja atendida. Infelizmente o intervalo mínimo ao criar um novo gatilho éDiário, o que é um tanto inflexível no seu cenário.

Duas opções vêm à mente:

  • Em vez de desabilitar a tarefa para interromper sua execução, simplesmente interrompa-a. Se você precisar interromper a execução apenas por um curto período de tempo, isso pode ser tudo o que você precisa fazer. No entanto, se você precisar de controle total sobre quando a tarefa é iniciada ou interrompida, não defina nenhuma condição de gatilho e, em seguida, inicie/interrompa a tarefa manualmente.
  • Crie vários gatilhos para que um gatilho seja acionado depois que a tarefa for habilitada. Obviamente, isso não é o ideal, especialmente considerando a necessidade de executar a tarefa a cada 5 minutos.

Responder3

Isso destaca a diferença de comportamento entre uma tarefa “Diária” e uma tarefa “Única”. Isso é um pouco contra-intuitivo, mas se você quiser desabilitar uma tarefa e fazer com que ela comece a disparar automaticamente novamente logo após reativá-la, você precisa torná-la uma tarefa “Única” em vez de “Diária”.

Esta é a aparência deles na lista de tarefas (nomeadas deliberadamente para destacar as diferenças de cronograma):

Lista de tarefas

Quando uma tarefa diária é desativada e reativada, ela será retomada no horário de início (ou seja, mais tarde naquele dia ou no dia seguinte):

Tarefa diária

Se uma tarefa única for desativada e reativada, ela será retomada assim que decorrer mais um intervalo de repetição, relativo ao seu horário de início.

Tarefa única

informação relacionada