Exécution asynchrone des commandes Shell
Lorsque vous gérez des tâches gourmandes en ressources dans vos scripts PHP, il est souvent souhaitable de les exécuter en arrière-plan pour évitez de bloquer l’exécution d’un autre code. Une méthode courante pour exécuter des commandes shell est shell_exec, mais elle nécessite généralement que le script attende la fin de la commande.
Pour exécuter une commande shell sans attendre qu'elle se termine, vous pouvez utiliser une technique d'exécution en arrière-plan. Ceci est réalisé en redirigeant la sortie standard et les flux d'erreurs standard de la commande shell vers des périphériques nuls.
Considérez le code PHP suivant :
shell_exec('php measurePerformance.php 47 844 [email protected] > /dev/null 2>/dev/null &');
Dans ce code, nous employons les stratégies suivantes :
Cette technique vous permet de générer une commande shell de manière asynchrone, libérant ainsi votre script PHP pour continuer à s'exécuter sans attendre la fin de la commande.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!