(PECL ev >= 0.2.0)
Представляет событийный цикл, который всегда отличается от цикла по умолчанию. В отличие от цикла по умолчанию, он не может работать с наблюдателями EvChild.
Если доступна работа с потоками исполнения, то необходимо создать цикл для каждого потока используя в качестве родителя цикл по умолчанию.
Событийный цикл по умолчанию инициализируется автоматически с помощью Ev. Он доступен через методы класса Ev или через метод EvLoop::defaultLoop().
$flags
= ?,$data
= NULL
,$io_interval
= 0.0
,$timeout_interval
= 0.0
$pid
,$trace
,$callback
,$data
= ?,$priority
= ?$flags
= Ev::FLAG_AUTO
,$data
= NULL
,$io_interval
= 0.
,$timeout_interval
= 0.
$other
,$callback
= ?,$data
= ?,$priority
= ?$fd
,$events
,$callback
,$data
= null
,$priority
= 0
$offset
,$interval
,$callback
,$data
= null
,$priority
= 0
$signum
,$callback
,$data
= null
,$priority
= 0
$path
,$interval
,$callback
,$data
= null
,$priority
= 0
Произвольные данные, которые добавили циклу
Только чтение. Флаги бэкенда, которые указывают, какой событийный бэкенд используется.
Только чтение.
Если установили значение true, то это цикл по умолчанию.
Текущий счётчик итераций. Смотри Ev::iteration()
Количество ожидающих наблюдателей.
Значение 0 указывает, что
ожидающих наблюдателей нет.
Более высокие значения
io_interval
разрешают
модулю libev
тратить больше времени для сбора событий
EvIo,
что позволит обработать больше событий за одну итерацию
заплатив за это увеличенными задержками.
Время ожидания (и EvPeriodic
и EvTimer) не будет затронуто.
Установка в ненулевое значение добавить дополнительный
вызов sleep() в большинство итераций цикла.
Время сна гарантирует, что
libev
не будет передавать события
EvIo
чаще, чем один раз за этот период, в среднем.
Для большинства программ хорошим значением
io_interval
будет значение около
0.1,
этого достаточно для большинства интерактивных серверов (не для игр).
Обычно разница незаметна, если установили значение
меньше 0.01, поскольку
это значение будет близко к минимальному интервалу вычисляемого
времени для большинства систем.
Также читайте » ФУНКЦИИ УПРАВЛЕНИЯ СОБЫТИЙНЫМИ ЦИКЛАМИ.
Более высокие значения timeout_interval позволят libev тратить больше времени для сбора превышенного времени ожидания за счёт увеличения задержек, джиттеров или неточностей (callback-функция наблюдателя будет вызвана позже). Наблюдатели EvIo не будут затронуты. Увеличение этого значение не вызовет перерасхода ресурсов в libev. Также читайте » ФУНКЦИИ УПРАВЛЕНИЯ СОБЫТИЙНЫМИ ЦИКЛАМИ.
Глубина рекурсии. Смотрите описание метода Ev::depth().