Конструктор объекта наблюдателя EvPeriodic

# EvPeriodic::__construct

(PECL ev >= 0.2.0)

EvPeriodic::__construct — Конструктор объекта наблюдателя EvPeriodic

### Описание

public function EvPeriodic::__construct(
float `$offset` ,
string `$interval` ,
callable `$reschedule_cb` ,
callable `$callback` ,
mixed `$data` = `null` ,
int `$priority` = 0
)

Создаёт объект наблюдателя EvPeriodic и запускает его автоматически. Метод EvPeriodic::createStopped() создаёт остановленный периодический наблюдатель.

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

`offset`
  Смотрите Периодические режимы работы наблюдателя
`interval`
  Смотрите Периодические режимы работы наблюдателя
`reschedule_cb`
  Переназначить callback-функцию. Вы можете передать `null`. Смотрите Периодические режимы работы наблюдателя
`callback`
  Смотрите Наблюдатели callback-функции.
`data`
  Пользовательские данные, связанные с наблюдателем.
`priority`
  Приоритет наблюдателя

### Примеры

Пример #1 Периодический таймер. Используйте переназначение callback-функции

    <?php
    // отмечает каждые 10.5 секунд

    function reschedule_cb ($watcher, $now) {
     return $now + (10.5 - fmod($now, 10.5));
    }

    $w = new EvPeriodic(0., 0., "reschedule_cb", function ($w, $revents) {
     echo time(), PHP_EOL;
    });
    Ev::run();
    ?>

Пример #2 Периодический таймер. Отмечает каждые 10,5 секунд, начиная с текущего момента

    <?php
    // Отмечает каждые 10.5 секунд, начиная с текущего момента
    $w = new EvPeriodic(fmod(Ev::now(), 10.5), 10.5, NULL, function ($w, $revents) {
     echo time(), PHP_EOL;
    });
    Ev::run();
    ?>

Пример #3 Часовой наблюдатель

    <?php
    $hourly = EvPeriodic(0, 3600, NULL, function () {
     echo "раз в час\n";
    });
    ?>

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

- Периодические режимы работы наблюдателя
- EvTimer
- EvPeriodic::createStopped() - Создаёт остановленный наблюдатель EvPeriodic

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open