« EvTimer::__construct
EvTimer::set »

EvTimer::createStopped

(PECL ev >= 0.2.0)

EvTimer::createStopped — Creates EvTimer stopped watcher object

説明

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

Creates EvTimer stopped watcher object. Unlike EvTimer::__construct(), this method doesn't start the watcher automatically.

パラメータ

after

Configures the timer to trigger after after seconds.

repeat

If repeat is 0.0, then it will automatically be stopped once the timeout is reached. If it is positive, then the timer will automatically be configured to trigger again every repeat seconds later, until stopped manually.

callback

See Watcher callbacks.

data

Custom data associated with the watcher.

priority

Watcher priority

戻り値

Returns EvTimer watcher object on success.

例

例1 Monitor changes of /var/log/messages. Avoid missing updates by means of one second delay

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

    $stat = $w->data;

    // 1 second after the most recent change of the file
    printf("Current size: %ld\n", $stat->attr()['size']);
});

$stat = new EvStat("/var/log/messages", 0., function () use ($timer) {
    // Reset timer watcher
    $timer->again();
});

$timer->data = $stat;

Ev::run();
?>

参考

関連キーワード:
EvTimer   watcher   timer   stopped   after   Creates   createStopped   repeat   stat   construct   priority   automatically   float   callback   trigger   seconds   again   Watcher   messages   second   size   final   static   callable   mixed
関連する関数・ページ:
evtimer.set   class.evtimer   evtimer.construct   evloop.timer   evtimer.again   evperiodic.createstopped