CakeFest 2024: The Official CakePHP Conference

GearmanClient::setCreatedCallback

(PECL gearman >= 0.5.0)

GearmanClient::setCreatedCallbackУстановить функцию обратного вызова, когда задача ставится в очередь

Описание

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

Устанавливает функцию, которая будет вызвана, когда задача получена и поставлена в очередь сервером задач Gearman. Функция обратного вызова должна принимать единственный параметр - объект GearmanTask.

Список параметров

function

Функция, которая должна быть вызвана.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.

Смотрите также

  • GearmanClient::setDataCallback() - Задаёт callback-функцию для обработки переданных данных
  • GearmanClient::setCompleteCallback() - Установите функцию, которая будет вызвана по завершении задачи
  • GearmanClient::setExceptionCallback() - Установка функции обратного вызова для перехвата исключений обработчика заданий
  • GearmanClient::setFailCallback() - Установка callback-функции для обработки ситуации, когда задание не удалось выполнить
  • GearmanClient::setStatusCallback() - Задание callback-функции, собирающей информацию о состоянии обработчика заданий
  • GearmanClient::setWarningCallback() - Установка callback-функции, обслуживающей предупреждения обработчика заданий
  • GearmanClient::setWorkloadCallback() - Установка callback-функции, принимающей промежуточные результаты от обработчика заданий

add a note

User Contributed Notes 2 notes

up
0
stanislav dot reshetnev at gmail dot com
9 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
9 years ago
Contrary to the documentation, this callback accepts an instance of \GearmanTask, not \GearmanClient.
To Top