(PECL ev >= 0.2.0)
EvTimer::createStopped — Creates EvTimer stopped watcher object
$after
,
float
$repeat
,
callable
$callback
[,
mixed
$data
= NULL
[,
int
$priority
= 0
]] ) : EvTimerCreates 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
Returns EvTimer watcher object on success.
例1 Monotor 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();
?>