International PHP Conference Berlin 2025

Watcher callbacks

Все наблюдатели могут быть либо активными (ожидать сообщения), либо неактивными (приостановленными). Только активные наблюдатели могут вызывать свои callback-функции. Все такие функции вызываются как минимум с двумя параметрами: watcher - наблюдатель, и revents - битовая маска принятых событий.

Callback-функции наблюдателей передаются в конструкторы наблюдателей (классы, наследующие от EvWatcher - EvCheck::__construct(), EvChild::__construct() и т.д.) Callback-функция наблюдателя должна соответствовать следующему прототипу:

callback( object $watcher = NULL , int $revents = NULL ): void

watcher

Экземпляр наблюдателя (класс расширяющий EvWatcher).

revents

Принятые наблюдателем события.

Каждый тип наблюдателя имеет собственный бит в revents, ассоциированный с ним, что позволяет использовать одну и ту же callback-функцию для множества наблюдателей. Событийная маска именуется после типа, т.е. EvChild (или EvLoop::child()) устанавливает EV::CHILD, EvPrepare (или EvLoop::prepare()) устанавливает Ev::PREPARE, EvPeriodic (или EvLoop::periodic()) устанавливает Ev::PERIODIC и так далее, с исключением для событий ввода/вывода (которые устанавливают оба бита, и Ev::READ и Ev::WRITE).

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top