GearmanClient::do

(PECL gearman >= 0.5.0)

GearmanClient::do — Виконує одне завдання та повертає результат [Застарілий метод]

Опис

public GearmanClient::do(string $function_name, string $workload, string $unique = ?): string

Метод**GearmanClient::do()**устарел, начиная с pecl/gearman 1.0.0. ИспользуйтеGearmanClient::doNormal()

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

function_name

Зареєстрована функція, що викликається робочим процесом

workload

Серіалізовані дані, що підлягають обробці

unique

Унікальний ID, який призначається певному завданню

Значення, що повертаються

Результат виконання завдання у вигляді рядка.

Приклади

Приклад #1 Просте подання завдання з безпосереднім поверненням

Loading...
Loading...

Висновок наведеного прикладу буде схожим на:

Начало
Отправка задания
Успешно: !olleH

Приклад #2 Передача завдання та отримання інкрементного стану

Надсилається завдання та встановлюється цикл для отримання інформації про зміну статусу. У обробника вказана штучна затримка для моделювання тривалого виконання завдання та задана відправка стану та даних під час обробки. Кожен наступний виклик GearmanClient::do() виводить інформацію про статус виконання поточного завдання.

Loading...
Loading...

Висновок наведеного прикладу буде схожим на:

Висновок оброблювача:

Начало
Ожидание задания...
Полученное задание: H:foo.local:106
Рабочая нагрузка: Hello! (6)
1/6 выполнено
2/6 выполнено
3/6 выполнено
4/6 выполнено
5/6 выполнено
6/6 выполнено
Результат: !olleH

Висновок клієнта:

Начало
Отправка задания
Статус: 1/6 выполнено
Данные: H
Статус: 2/6 выполнено
Данные: e
Статус: 3/6 выполнено
Данные: l
Статус: 4/6 выполнено
Данные: l
Статус: 5/6 выполнено
Данные: o
Статус: 6/6 выполнено
Данные: !
Успешно: !olleH

Дивіться також

  • GearmanClient::doHigh() - Запускає на виконання завдання із високим пріоритетом
  • GearmanClient::doLow() - Запускає виконання завдання з низьким пріоритетом
  • GearmanClient::doBackground() - Запускає виконання завдання у фоновому режимі
  • GearmanClient::doHighBackground() - Запускає на виконання із високим пріоритетом завдання у фоновому режимі
  • GearmanClient::doLowBackground() - Запускає на виконання з низьким пріоритетом завдання у фоновому режимі