監測器是一個用於記錄對某些事件感興趣的物件。例如,以下程式碼會等待 STDIN
變為可讀取
<?php
// 等待 STDIN 可讀取
$w = new EvIo(STDIN, Ev::READ, function ($watcher, $revents) {
echo "STDIN 可讀取\n";
});
Ev::run(Ev::RUN_ONCE);
?>
所有 watcher 建構式都會自動啟動 watcher。`createStopped` 方法會建立已停止的 watcher(例如 EvIo::createStopped())。
請注意,當 watcher 物件被銷毀時,watcher 會自動停止。因此,應該保留由建構式或工廠方法返回的 watcher 物件。
另請注意,所有更改某些 watcher 屬性(`set`、priority 等)的方法都會在 watcher 處於活動狀態時自動停止並重新啟動它,這表示待處理的事件會遺失。
另請參閱:Watcher 回呼。