ウォッチャー
ウォッチャーは、何らかのイベントに関する興味を記録するオブジェクトです。
たとえば次のコードは、
STDIN
が読み込み可能になるまで待ちます。
<?php// STDIN が読み込み可能になるまで待ちます$w = new EvIo(STDIN, Ev::READ, function ($watcher, $revents) { echo "STDIN is readable\n";});Ev::run(Ev::RUN_ONCE);?>
すべてのウォッチャーのコンストラクタが、自動的にウォッチャーを開始します。
createStopped
メソッドを使う
(EvIo::createStopped() など)
と、停止状態のウォッチャーを作れます。
ウォッチャーオブジェクトを破棄するときには、自動的にウォッチャーが停止することに注意しましょう。 したがって、コンストラクタやファクトリーメソッドが返すオブジェクトはずっと維持する必要があります。
また、ウォッチャーのプロパティ
(set や priority
etc.)
を変更するすべてのメソッドは、自動的にウォッチャーを停止して
アクティブになったら立ち上げなおすことにも注意しましょう。
つまり、未処理のイベントは失われてしまいます。
ウォッチャーのコールバック も参照ください。