EvTimer::__construct Создаёт объект наблюдателя EvTimer &reftitle.description; public EvTimer::__construct float after float repeat callable callback mixed data &null; int priority 0 Метод создаёт объект наблюдателя EvTimer. &reftitle.parameters; after Параметр after устанавливает количество секунд, через которое запустится таймер. repeat Таймер автоматически остановится после истечения времени ожидания, если время повтора равно 0.0. При положительном значении таймер автоматически настроится на повторный запуск через заданный в секундах интервал, пока таймер не остановят вручную. callback Смотрите страницу «Callback-функции наблюдателей. data Пользовательские данные, связанные с наблюдателем. priority «Приоритет наблюдателя». &reftitle.examples; Пример простых таймеров stop(); // Останавливаем наблюдателя, если очередные вызовы создадут более 10 итераций Ev::iteration() >= 10 and $w->stop(); }); // Создаём остановленный таймер. Таймер будет неактивным, пока его не запустят вручную $w_stopped = EvTimer::createStopped(10, 5, function($w) { echo "Callback-функция таймера, который создали остановленным\n"; // Останавливаем наблюдателя после 2 итераций Ev::iteration() >= 2 and $w->stop(); }); // Цикл до вызова Ev::stop() или остановки всех наблюдателей Ev::run(); // Запускаем и смотрим, работает ли таймер $w_stopped->start(); echo "Запустили одну итерацию\n"; Ev::run(Ev::RUN_ONCE); echo "Перезапустили второй наблюдатель и пробуем обработать те же события, но не блокируем\n"; $w2->again(); Ev::run(Ev::RUN_NOWAIT); $w = new EvTimer(10, 0, function() {}); echo "Запуск заблокированного цикла\n"; Ev::run(); echo "END\n"; ?> ]]> &example.outputs.similar; &reftitle.seealso; EvTimer::createStopped EvPeriodic ev_timer — относительное и необязательно повторяющееся время ожидания Будьте осторожны со временем ожидания