Tema: locking
-
Como impedir execuções simultâneas de um script administrativo: flock, lockf e mutex nomeado no Windows
Um script administrativo agendado ou disparado por um agente, que pode ser iniciado de novo antes de a execução anterior terminar, precisa de um lock e não de esperar que isso nunca aconteça. O flock(1) no Linux e o lockf(1) no FreeBSD associam um lock consultivo (advisory) do kernel a um processo em execução, por isso ele não fica obsoleto como um arquivo PID esquecido; no Windows, o equivalente é um System.Threading.Mutex nomeado.
Legível por máquina: JSON