(PECL ev >= 0.2.0)
EvTimer::createStopped — Crée un objet EvTimer watcher stoppé
$after
,$repeat
,$callback
,$data
= null
,$priority
= 0
Crée un objet EvTimer watcher stoppé. Contrairement à la méthode EvTimer::__construct(), cette méthode ne démarre pas automatiquement le watcher.
after
after secondes.
repeat
0.0, alors le watcher
sera automatiquement stoppé une fois le délai maximal d'attente atteint.
Si ce paramètre est positif, alors le timer va automatiquement
lancer le trigger à chaque seconde suivante, et ce, tant qu'il ne
sera pas stoppé manuellement.
callback
data
priority
Retourne un objet EvTimer watcher en cas de succès.
Exemple #1 Surveillance des modifications dans of /var/log/messages. Détecte les mises à jour oubliées en ajoutant une seconde de délai
<?php
$timer = EvTimer::createStopped(0., 1.02, function ($w) {
$w->stop();
$stat = $w->data;
// 1 seconde après la modification la plus récente du fichier
printf("Current size: %ld\n", $stat->attr()['size']);
});
$stat = new EvStat("/var/log/messages", 0., function () use ($timer) {
// Réinitialise le watcher timer
$timer->again();
});
$timer->data = $stat;
Ev::run();
?>