Created
June 17, 2015 13:18
-
-
Save beunwa/e96a6027dc57fb034a25 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//créez un fichier mylock avec les droit de l'utilisateur qui execute le cron | |
//lancez la fonction mycron via votre systeme de cron | |
//voila, plus jamais d'overlap de cron | |
function mycron() { | |
$error = false; | |
//on ouvre le fichier du verrou | |
$fp = fopen("./mylock", "w+"); | |
if (flock($fp, LOCK_EX | LOCK_NB)) { // acquière un verrou exclusif | |
//toute la logique metier du cron qui peut durer | |
flock($fp, LOCK_UN); // Enlève le verrou | |
}else{//le verrou est actif on sort | |
//toute la logique metier si le cron tourne encore | |
} | |
//on pense à fermer le fichier du verrou | |
fclose($fp); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment