CakeFest 2024: The Official CakePHP Conference

Класс EvWatcher

(PECL ev >= 0.2.0)

Введение

EvWatcher является базовым классом для всех наблюдателей( EvCheck, EvChild и т.д.). Так как конструктор EvWatcher имеет модификатор abstract, вы не должны (и не сможете) создавать объекты этого класса напрямую.

Обзор классов

abstract class EvWatcher {
/* Свойства */
public $is_active;
public $data;
public $is_pending;
public $priority;
/* Методы */
abstract public __construct()
public clear(): int
public feed( int $revents ): void
public getLoop(): EvLoop
public invoke( int $revents ): void
public keepalive( bool $value = ?): bool
public setCallback( callable $callback ): void
public start(): void
public stop(): void
}

Свойства

is_active

Только чтение. Если наблюдатель активен, то true, если нет, то false.

data

Произвольные пользовательские данные.

is_pending

Только чтение. если наблюдатель в режиме ожидания, то есть имеет неразобранные сообщения, а callback-функция ещё не запускалась, то true. В противном случае false. Пока наблюдатель находится в режиме ожидания (но не активен), вы не должны изменять его приоритет.

priority

Целое число (int) в диапазоне от Ev::MINPRI до Ev::MAXPRI. Ожидающие наблюдатели с более высоким приоритетом будут вызваны раньше наблюдателей с более низким приоритетом, но приоритет не будет препятствовать запуску наблюдателя (за исключением наблюдателей EvIdle). Наблюдатели EvIdle предоставляют функционал, предотвращающий вызов, если есть ожидающие высокоприоритетные сообщения.

Содержание

  • EvWatcher::clear — Очистить статус ожидания наблюдателя
  • EvWatcher::__construct — Абстрактный конструктор объекта наблюдателя
  • EvWatcher::feed — Подаёт указанные события в цикл событий
  • EvWatcher::getLoop — Возвращает цикл, отвечающий за наблюдателя
  • EvWatcher::invoke — Вызывает callback-функцию наблюдателя с заданной битовой маской принятых событий
  • EvWatcher::keepalive — Настраивает, будет ли возвращаться цикл
  • EvWatcher::setCallback — Устанавливает новую callback-функцию для наблюдателя
  • EvWatcher::start — Запускает наблюдателя
  • EvWatcher::stop — Останавливает наблюдателя
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top