Swoole\Timer::tick

(PECL swoole >= 1.9.0)

Swoole\Timer::tickDéfinit un minuteur répétitif

Description

public static function Swoole\Timer::tick(int $ms, callable $callback, mixed ...$params): int|false

Définit un minuteur qui se déclenche toutes les ms millisecondes. Contrairement à un minuteur créé avec Swoole\Timer::after(), il continue de se déclencher jusqu'à sa suppression avec Swoole\Timer::clear().

Liste de paramètres

ms

L'intervalle, en millisecondes. Doit être supérieur ou égal à 1 ; une valeur inférieure émet une E_WARNING et l'appel échoue.

callback

La fonction à exécuter à chaque déclenchement. Elle est appelée sous la forme callback(int $timer_id, mixed ...$params) : l'identifiant du minuteur est transmis comme premier argument, suivi des valeurs données dans params.

params

Valeurs supplémentaires transmises à callback après l'identifiant du minuteur.

Valeurs de retour

Retourne l'identifiant du minuteur, qui peut être transmis à Swoole\Timer::clear(). Retourne false si le minuteur n'a pas pu être créé, en particulier lorsque ms est inférieur à 1.

Exemples

Exemple #1 Exemple avec Swoole\Timer::tick()

<?php
$ticks = 0;
Swoole\Timer::tick(1000, function (int $timer_id, string $label) use (&$ticks) {
    echo "tick #", ++$ticks, " ($label)\n";
    if ($ticks === 3) {
        Swoole\Timer::clear($timer_id);
    }
}, "job");
?>

L'exemple ci-dessus va afficher :

tick #1 (job)
tick #2 (job)
tick #3 (job)
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top