所有监视器可以处于活动状态(等待事件)或非活动状态(暂停)。只有活动监视器才会调用其回调。所有回调都将至少使用两个参数调用:watcher
- 监视器,以及 revents
- 收到的事件的位掩码。
Watcher 回调传递给监视器构造函数(从 EvWatcher 派生的类 - EvCheck::__construct() 、 EvChild::__construct() 等)。Watcher 回调应匹配以下原型
每个监视器类型在 revents
中都有其关联的位,因此可以使用相同的回调来处理多个监视器。事件掩码以类型命名,即 EvChild(或 EvLoop::child() )设置 EV::CHILD
、 EvPrepare(或 EvLoop::prepare() )设置 Ev::PREPARE
、 EvPeriodic(或 EvLoop::periodic() )设置 Ev::PERIODIC
等,除了 I/O 事件(可以同时设置 Ev::READ
和 Ev::WRITE
位)。