when using timer after must use
swoole_event_wait();(PECL swoole >= 1.9.0)
Swoole\Timer::after — Ejecuta una función después de un tiempo determinado
$ms, callable $callback, mixed ...$params): int|falseCrea un temporizador de un solo disparo, que se destruye una vez ejecutada su retrollamada. A diferencia de sleep(), no bloquea el proceso actual.
ms
El retardo en milisegundos. Debe ser mayor o igual que
1; un valor inferior emite un
E_WARNING y la llamada falla.
callback
La función a ejecutar una vez transcurrido el retardo. Se llama como
callback(mixed ...$params). A diferencia de
Swoole\Timer::tick(), el identificador del
temporizador no se pasa a la retrollamada.
params
Valores adicionales que se pasan a callback.
Devuelve el identificador del temporizador, que puede pasarse a
Swoole\Timer::clear() para cancelarlo antes de que se
dispare. Devuelve false si el temporizador no ha podido crearse, en
particular cuando ms es menor que
1.
Ejemplo #1 Ejemplo de Swoole\Timer::after()
<?php
Swoole\Timer::after(1000, function (string $name) {
echo "Hola, $name\n";
}, "Swoole");
?>El ejemplo anterior mostrará:
Hola, Swoole