GearmanClient::doNormal
(No version information available, might only be in Git)
GearmanClient::doNormal — Виконує одиночне завдання та повертає результат
Опис
public GearmanClient::doNormal(string $function, string $workload, ?string $unique = null): string
Виконує одиночне завдання та повертає рядкове подання результату. Формат результату, що повертається, визначають об'єкти. GearmanClient і GearmanWorker
Список параметрів
function
Зареєстрована функція, що викликається робочим процесом
workload
Серіалізовані дані, що підлягають обробці
unique
Унікальний ID, який призначається певному завданню
Значення, що повертаються
Рядок, що представляє результат виконання завдання.
Приклади
Приклад #1 Виконання простого завдання з негайним поверненням
Loading...
Loading...
Loading...
Висновок наведеного прикладу буде схожим на:
Запуск
Отправка задания
Задание выполнено: !olleH
Приклад #2 Надсилання завдання на обробку та моніторинг стану
Після надсилання завдання скрипт у циклі запитує поточний прогрес обробки. В обробник введена штучна затримка, щоб змоделювати завдання, що довго виконується. Оброблювач посилає клієнту свій поточний стан, як тільки завершено обробку чергової порції даних. Послідовні виклики GearmanClient::doNormal() запитують поточний стан завдання, що виконується.
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() - Запускає на виконання з низьким пріоритетом завдання у фоновому режимі