EvTimer::createStopped

(PECL ev >= 0.2.0)

EvTimer::createStoppedСоздаёт остановленного наблюдателя EvTimer

Описание

final public static EvTimer::createStopped(
     float $after ,
     float $repeat ,
     callable $callback ,
     mixed $data = null ,
     int $priority = 0
): EvTimer

Метод создаёт остановленного наблюдателя EvTimer. Метод не запускает наблюдателя автоматически, как это делает метод EvTimer::__construct().

Список параметров

after

Параметр after устанавливает количество секунд, через которое запустится таймер.

repeat

Таймер автоматически остановится после истечения времени ожидания, если время повтора равно 0.0. При положительном значении таймер автоматически настроится на повторный запуск через заданный в секундах интервал, пока таймер не остановят вручную.

callback

Смотрите страницу «Наблюдатели callback-функций».

data

Пользовательские данные, связанные с наблюдателем.

priority

«Приоритет наблюдателя».

Возвращаемые значения

Метод возвращает объект наблюдателя EvTimer, если завершается успешно.

Примеры

Пример #1 Пример просмотра изменений в файле /var/log/messages. Избегаем пропущенные обновления с задержкой в одну секунду

<?php

$timer
= EvTimer::createStopped(0., 1.02, function ($w) {
$w->stop();

$stat = $w->data;

// 1 секунда после последнего изменения файла
printf("Текущий размер: %ld\n", $stat->attr()['size']);
});

$stat = new EvStat("/var/log/messages", 0., function () use ($timer) {
// Сброс таймера наблюдателя
$timer->again();
});

$timer->data = $stat;

Ev::run();

?>

Смотрите также

Добавить

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

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