Maison > cadre php > Workerman > La minuterie dans Workman ne prend pas effet

La minuterie dans Workman ne prend pas effet

王林
Libérer: 2019-12-13 09:51:14
original
2858 Les gens l'ont consulté

La minuterie dans Workman ne prend pas effet

La question mène à :

Placez un WorkermanLibTimer dans start_gateway.php et exécutez-le toutes les deux secondes. Chaque exécution enregistre d'abord un morceau de texte dans un fichier texte.

Il n'y a aucun problème lors de l'exécution en tant que php start.php start, mais lors de l'exécution en tant que php start.php start -d, il semble que le minuteur ne fonctionne pas.

Le code start_gateway.php est le suivant

La minuterie dans Workman ne prend pas effet

La minuterie dans Workman ne prend pas effet

La minuterie dans Workman ne prend pas effet

Problème résolu :

La logique métier doit être exécutée dans le rappel onXXX (souligné dans le manuel). En d'autres termes, le minuteur ne peut pas s'exécuter avant que Worker::runAll(); ne soit exécuté.

Étant donné que le code exécuté avant l'exécution de Worker::runAll(); appartient au processus principal, le processus principal ne peut pas avoir de code métier et le code métier du processus principal sera hérité par le processus enfant, résultant en des résultats incompatibles avec les résultats attendus.

Dans l'exemple ci-dessus, le minuteur peut être exécuté dans onWorkerStart. Il est recommandé de le placer dans le rappel $businessworker->onWorkerStart dans start_businessworker.php.

Articles et tutoriels connexes recommandés : tutoriel ouvrier

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal