PHP Conference Nagoya 2025

GearmanClient::setCreatedCallback

(PECL gearman >= 0.5.0)

GearmanClient::setCreatedCallbackDéfinit une fonction de rappel à appeler lorsqu'une tâche est placée dans la file d'attente

Description

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

Définit une fonction de rappel à appeler lorsqu'une tâche est placée dans la file d'attente du serveur de travaux gearman.

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 2 notes

up
0
stanislav dot reshetnev at gmail dot com
10 years ago
Callback can accept not only GearmanTask object, but it can recieve a variable from GearmanClient::addTask():

<?php
$client
= new GearmanClient();
$client->addServer();

$client->setCreatedCallback(function(GearmanTask $task, $some_info) {
// now we have $some_info
// ...
});

$client->addTask($function_name, $workload, "some info");
?>

So, we can send to our anonymous function something like $workload, because we can't get it from GearmanTask object. It may be usefull for logging of tasks queuing.
up
0
Karl Rixon
10 years ago
Contrary to the documentation, this callback accepts an instance of \GearmanTask, not \GearmanClient.
To Top