Класс EvCheck EvCheck
&reftitle.intro; Наблюдатели EvPrepare и EvCheck обычно используются в паре. Наблюдатель EvPrepare вызывается до блокировки процесса, затем вызывается EvCheck Не разрешается вызывать EvLoop::run или аналогичные методы или функции, введённые в текущий цикл событий другими наблюдателями EvPrepare или EvCheck. Однако другие циклы событий, не текущий, могут. Смысл в том, что текущему не нужно проверять рекурсию в таких наблюдателях, т.е. всегда будет последовательность: EvPrepare -> блокировка -> EvCheck, так что наблюдателя каждого вида всегда будут вызывать в парах, захватывая блокирующий вызов. Основная цель заключается в интеграции других событийных механизмов в libev и улучшенное их использование. Они могут быть использованы, например, при отслеживании изменении переменных, при реализации пользовательских наблюдателей, при интегрировании NET-SNMP или сопрограмм библиотеки и многое другое. Они также иногда полезны при кешировании данных и при очистке данных до блокировки. Рекомендуется устанавливать наблюдателям EvCheck наивысший приоритет (Ev::MAXPRI), чтобы обеспечить возможность их запуска раньше любых других наблюдателей после опроса (это не имеет значения для наблюдателей EvPrepare). Кроме того, наблюдатели EvCheck не смогут активировать/подавать события. Пока libev полностью поддерживает все это, они могут выполняться раньше, чем другие наблюдатели EvCheck выполнят свою работу.
&reftitle.classsynopsis; EvCheck EvCheck extends EvWatcher &InheritedProperties; &Methods; &InheritedMethods;
&reference.ev.entities.evcheck;