Tous les watchers peuvent être actifs (en attente d'événements) ou inactifs
(en pause). Seuls les watchers actifs peuvent avoir leurs fonctions de rappel
d'appelées. Toutes les fonctions de rappel seront appelées avec au moins deux
arguments :
watcher
- le watcher, et revents
,
un masque d'événements reçus.
Les fonctions de rappel des watchers sont passées aux constructeurs des watchers (une classe dérivée de EvWatcher - EvCheck::__construct(), EvChild::__construct() etc.). Une fonction de rappel d'un watcher doit correspondre au prototype suivant :
watcher
L'instance du watcher (d'une classe étendant EvWatcher).
revents
Chaque type de watcher a un octet d'associé dans
revents
, aussi, on peut utiliser la même
fonction de rappel pour plusieurs watchers. Le masque d'événements
est nommé après le type, i.e.
EvChild (ou EvLoop::child()) définit
EV::CHILD
, EvPrepare (ou
EvLoop::prepare()) définit Ev::PREPARE
,
EvPeriodic (ou EvLoop::periodic())
définit Ev::PERIODIC
et ainsi de suite, avec comme exception les
événements I/O (qui peuvent définir à la fois les octets
Ev::READ
et Ev::WRITE
).