# Fonctions de rappel des événements

Si une fonction de rappel est enregistrée pour un événement, elle sera appelée lorsque l'événement devient actif. Pour associer une fonction de rappel avec un événement, il convient de la passer avec un type callable à la méthode Event::__construct(), Event::set(), ou toute autre méthode factorielle comme Event::timer().

Une fonction de rappel d'événement doit correspondre au prototype suivant :

callback( mixed `$fd` = `null` , int `$what` = ?, mixed `$arg` = `null` ): void

`fd`

  Un descripteur de fichier, une ressource de flux, ou un socket associé avec l'événement. Pour les événements de type signal, `fd` correspond au numéro du signal.

`what`

  Masque d'octets de tous les événements lancés.

`arg`

  Données utilisateurs personnalisées.

La méthode Event::timer() attend une fonction de rappel qui correspond au prototype suivant :

callback( mixed `$arg` = `null` ): void

`arg`

  Données utilisateurs personnalisées.

La méthode Event::signal() attend une fonction de rappel correspondant au prototype suivant :

callback( int `$signum` = ?, mixed `$arg` = `null` ): void

`signum`

  Le numéro du signal lancé (i.e. `SIGTERM`).

`arg`

  Données utilisateurs personnalisées.