PHP 8.4.0 RC4 available for testing

GearmanClient::setCompleteCallback

(PECL gearman >= 0.5.0)

GearmanClient::setCompleteCallbackDéfinit une fonction à appeler une fois la tâche terminée

Description

public GearmanClient::setCompleteCallback(callable $callback): bool

Définit une fonction de rappel à appeler lorsqu'une GearmanTask se termine, ou quand GearmanJob::sendComplete() est appelé par le worker (selon ce qui se passe en premier).

Cette fonction de rappel est exécuté uniquement lors de l'exécution d'une GearmanTask à l'aide de GearmanClient::runTasks(). Il n'est pas utilisé pour des travaux individuels.

Note:

Le callback ne sera déclenché que pour les tâches qui sont ajoutées (par exemple en appelant GearmanClient::addTask()) après l'appel de cette méthode.

Liste de paramètres

callback

Une fonction ou méthode à appeler. Elle doit retourner une valeur valide de retour Gearman.

Si aucune instruction de retour n'est présente, la valeur par défaut sera GEARMAN_SUCCESS.

callback(GearmanTask $task, mixed $context): int
task

La tâche pour laquelle ce callback est appelé.

context

Tout ce qui a été passé à GearmanClient::addTask() (ou méthode équivalente) en tant que context.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Voir aussi

add a note

User Contributed Notes 1 note

up
5
Justas Butkus
13 years ago
One shall note, that callback function MUST either return a valid Gearman status code, or return nothing (do not return).

I.e. these are valid complete callbacks:

<?php
function goodCallbackOne(GearmanTask $task)
{
print_r($task);
}
?>

<?php
function goodCallbackTwo(GearmanTask $task)
{
print_r($task);
return
GEARMAN_SUCCESS;
}
?>

While following is NOT, unless you want your client code to fail with Gearman error 'german wait:no active file descriptors':

<?php
function badCallbackTwo(GearmanTask $task)
{
print_r($task);
return
true;
}
?>
To Top