PHP Conference Nagoya 2025

EvChild::__construct

(PECL ev >= 0.2.0)

EvChild::__constructConstruit l'objet d'observation EvChild

Description

public EvChild::__construct(
     int $pid ,
     bool $trace ,
     callable $callback ,
     mixed $data = null ,
     int $priority = 0
)

Construit l'objet d'observateur EvChild.

Appelle la fonction de rappel lorsqu'une modification de statut d'un processus dont l'ID pid (ou de tout PID s'il vaut 0) a été reçue (une modification de statut survient lorsque le processus se termine ou est tué, ou lorsque le paramètre trace vaut true, lorsque le processus est stoppé ou continué). En d'autres termes, lorsque le processus reçoit un SIGCHLD, Ev va récupérer tous les status de sortie/d'attente pour tous les fils modifiés/zombies et va appeler la fonction de rappel.

Il est valide d'installer un observateur sur le fils après qu'un EvChild ne soit sorti, mais avant que la boucle d'événement n'est démarrée sa prochaine itération. Par exemple, d'abord, appelez fork, puis le nouveau processus fils peut sortie, et uniquement là, un observateur EvChild est installé sur le parent pour le nouveau PID.

Vous pourrez accéder aux statuts de sortie/de traçage ainsi qu'aux pid en utilisant les propriétés rstatus et rpid de l'objet d'observation.

Le nombre d'observateurs PID par PID n'est pas limité. Ils seront tous appelés.

La méthode EvChild::createStopped() ne démarre (active) pas le nouvel observateur créé.

Liste de paramètres

pid

Attend les modifications de statut des processus PID (ou tout processus si PID vaut 0).

trace

Si vaut false, n'active l'observateur que lorsque le processus se termine. Sinon (true), active l'observateur lorsque le processus est stoppé ou continué.

callback

Voir les fonctions de rappel des observateurs.

data

Données personnalisées associées avec l'observateur.

priority

Fonctions de rappel de l'observateur

Voir aussi

  • EvLoop::child() - Crée un objet EvChild associé avec la boucle d'événements courante
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top