gearman

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
Антон
Сообщения: 199
Зарегистрирован: 2013.08.29, 05:27
Откуда: Харьков

gearman

Сообщение Антон » 2013.11.18, 11:18

У меня почему-то не работает функция setCompleteCallback

Код: Выделить всё

# Создаем нашего клиента
$gmclient= new GearmanClient(); 

# Добавляем сервер задач по умолчанию
$gmclient->addServer(); 

# Добавляем задачу для выполнения функции reverse, переворачивающей строку "Hello World!"
$gmclient->addTask("reverse", "Hello World!", null, "1"); 

# Добавляем другую задачу, для выполнения функции reverse, переворачивающей строку "!dlroW olleH"
$gmclient->addTask("reverse", "!dlroW olleH", null, "2"); 

# Устанавливаем функцию, которая будет вызвана по завершению работы
$gmclient->setCompleteCallback("complete"); 

# Выполняем задачи
$gmclient->runTasks(); 

function complete($task) 
{ 
  print "Выполнено: " . $task->unique() . ", " . $task->data() . "\n"; 
} 
Выполняется норм, но ни чего не выводит даже echo "1";

hiworder
Сообщения: 25
Зарегистрирован: 2013.09.17, 09:52

Re: gearman

Сообщение hiworder » 2013.11.22, 06:56

Попробуйте так

Код: Выделить всё

$gmclient= new GearmanClient(); 

$gmclient->setCompleteCallback("complete");

$gmclient->addServer(); 
$gmclient->addTask("reverse", "Hello World!", null, "1"); 
$gmclient->addTask("reverse", "!dlroW olleH", null, "2"); 

$gmclient->runTasks(); 

function complete($task) 
{ 
  print "Выполнено: " . $task->unique() . ", " . $task->data() . "\n"; 
} 
setCompleteCallback задается перед тасками, не знаю почему в мануале перепутали!

Антон
Сообщения: 199
Зарегистрирован: 2013.08.29, 05:27
Откуда: Харьков

Re: gearman

Сообщение Антон » 2013.11.22, 13:41

Спасибо все заработало

Ответить