EvTimer::__constructConstruye un objeto EvTimer watcher
&reftitle.description;
publicEvTimer::__constructfloatafterfloatrepeatcallablecallbackmixeddata&null;intpriority0
Construye un objeto EvTimer watcher.
&reftitle.parameters;
after
Configura el tiempo para lanzar el trigger después de
after segundos.
repeat
Si este argumento vale 0.0, entonces el watcher
se detendrá automáticamente cuando se alcance el tiempo máximo de espera. Si este argumento es positivo, entonces el timer lanzará automáticamente el trigger cada segundo siguiente, hasta que se detenga manualmente.
callback
Ver las
funciones de retrollamada Watcher.
data
Datos personalizados asociados con el watcher.
priority
Las prioridades del Watcher
&reftitle.examples;
timers simples
stop();
// Detiene el watcher si llamadas posteriores causan más de 10 iteraciones
Ev::iteration() >= 10 and $w->stop();
});
// Crea un timer detenido. Estará inactivo hasta que no se inicie manualmente
$w_stopped = EvTimer::createStopped(10, 5, function($w) {
echo "Función de retrollamada del timer creado detenido\n";
// Detiene el watcher después de 2 iteraciones
Ev::iteration() >= 2 and $w->stop();
});
// Bucle mientras Ev::stop() es llamado o mientras todos los watchers no se detienen
Ev::run();
// Inicia y bloquea si está en funcionamiento
$w_stopped->start();
echo "Ejecución de una sola iteración\n";
Ev::run(Ev::RUN_ONCE);
echo "Reinicia el segundo watcher y intenta manejar los mismos eventos, pero no bloquea\n";
$w2->again();
Ev::run(Ev::RUN_NOWAIT);
$w = new EvTimer(10, 0, function() {});
echo "Ejecución de un bucle bloqueante\n";
Ev::run();
echo "FIN\n";
?>
]]>
&example.outputs.similar;
&reftitle.seealso;
EvTimer::createStoppedEvPeriodic
ev_timer - repetición de un tiempo de espera máximo
Ser inteligente con los tiempos de espera máximo