# Предопределённые константы

Следующие константы определяются модулем и доступны, только если модуль либо собрали в PHP, либо динамически загрузили при выполнении кода.

Возвращаемые значения. Всегда проверяйте значение GearmanClient::error() или GearmanWorker(), содержащее строку с описанием ошибки, так как в этой строке может содержаться более детальная информация о последней операции:

`GEARMAN_SUCCESS` (int)
  Операция была завершена успешно.
`GEARMAN_IO_WAIT` (int)
  В режиме без блокировок событие ожидает установку блокировки.
`GEARMAN_ERRNO` (int)
  Системная ошибка. Чтобы получить код ошибки, воспользуйтесь функцией GearmanClient::errno() или GearmanWorker::errno().
`GEARMAN_NO_ACTIVE_FDS` (int)
  На момент вызова GearmanClient::wait() или GearmanWorker() не было активных подключений.
`GEARMAN_UNEXPECTED_PACKET` (int)
  Означает, что что-то пошло совсем не так, как должно было. Применимо только к GearmanWorker.
`GEARMAN_GETADDRINFO` (int)
  Неудачная операция разрешения имён DNS (неверный порт, хост и т.п.).
`GEARMAN_NO_SERVERS` (int)
  Перед отправкой задания или задачи не был вызван метод GearmanClient::addServer().
`GEARMAN_LOST_CONNECTION` (int)
  Во время обработки запроса прервалось соединение.
`GEARMAN_MEMORY_ALLOCATION_FAILURE` (int)
  Не удалось выделить память (недостаточно памяти).
`GEARMAN_SERVER_ERROR` (int)
  На сервере Gearman произошёл сбой, и сервер не смог обработать запрос.
`GEARMAN_WORK_DATA` (int)
  Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Выполняющий задание обработчик (worker) посылает этот код, когда ему требуется обновить данные на клиенте, передать часть результатов работы или сбросить данные во время выполнения долгих заданий.
`GEARMAN_WORK_WARNING` (int)
  Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Обновляет клиент с отправкой предупреждением. Поведение те же, что и в случае `GEARMAN_WORK_DATA`, однако этот код следует интерпретировать как предупреждение вместо обычных данных ответа.
`GEARMAN_WORK_STATUS` (int)
  Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Обработчик задания посылает этот код, чтобы обновить статус долго выполняемого задания. Используйте GearmanClient::doStatus() для получения процента завершения работы.
`GEARMAN_WORK_EXCEPTION` (int)
  Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Указывает, что выполнение задания завершилось неудачей с заданным исключением.
`GEARMAN_WORK_FAIL` (int)
  Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Указывает, что задание выполнить не удалось.
`GEARMAN_COULD_NOT_CONNECT` (int)
  Не удалось подключиться к серверу.
`GEARMAN_INVALID_FUNCTION_NAME` (int)
  Это значение возвращается при попытке зарегистрировать NULL в качестве имени функции или при использовании callback-интерфейса без указания callback-функций.
`GEARMAN_INVALID_WORKER_FUNCTION` (int)
  Попытка зарегистрировать в обработчике функцию, передавая NULL в качестве callback-функции.
`GEARMAN_NO_REGISTERED_FUNCTIONS` (int)
  Когда обработчик получил задание для функции, которая в нем не зарегистрирована.
`GEARMAN_NO_JOBS` (int)
  Для неблокирующего обработчика, когда GearmanWorker::work() не имеет активных заданий.
`GEARMAN_ECHO_DATA_CORRUPTION` (int)
  Указывает, что после вызова GearmanClient::echo() или GearmanWorker::echo() возвращённые данные не соответствуют переданным.
`GEARMAN_NEED_WORKLOAD_FN` (int)
  Когда клиент выбрал потоковый режим передачи данных для обработки, но не задал callback-функцию для обработки данных из этого потока.
`GEARMAN_PAUSE` (int)
  При работе в неблокирующем режиме, это значение может вернуть callback-функция, чтобы приостановить обработку задания и выйти из метода GearmanClient::runTasks(). Чтобы продолжить работу, следует ещё раз вызвать метод GearmanClient::runTasks().
`GEARMAN_UNKNOWN_STATE` (int)
  Внутренняя ошибка клиента/обработчика.
`GEARMAN_SEND_BUFFER_TOO_SMALL` (int)
  Внутренняя ошибка: попытка передать больше данных, чем помещается в один чанк. Размеры буфера жёстко заданы и не подлежат изменению.
`GEARMAN_TIMEOUT` (int)
  Превышено время ожидания, заданный клиентом/обработчиком.

Настройки GearmanClient:

`GEARMAN_CLIENT_GENERATE_UNIQUE` (int)
  Создавать уникальный идентификатор (UUID) для каждой задачи.
`GEARMAN_CLIENT_NON_BLOCKING` (int)
  Запускать клиента в неблокирующем режиме.
`GEARMAN_CLIENT_UNBUFFERED_RESULT` (int)
  Позволять клиенту читать данные и посылать их обратно в чанках вместо буферизации данных целиком средствами библиотеки.
`GEARMAN_CLIENT_FREE_TASKS` (int)
  Автоматически уничтожать объекты задач после их выполнения. Эта настройка используется по умолчанию, чтобы предотвратить утечки памяти.

Настройки GearmanWorker:

`GEARMAN_WORKER_NON_BLOCKING` (int)
  Запускать обработчик заданий в неблокирующем режиме.
`GEARMAN_WORKER_GRAB_UNIQ` (int)
  Возвращать клиенту уникальный идентификатор в дополнение к дескриптору задания.

Базовая конфигурация Gearman:

`GEARMAN_DEFAULT_TCP_HOST` (string)
`GEARMAN_DEFAULT_TCP_PORT` (int)
`GEARMAN_DEFAULT_SOCKET_TIMEOUT` (int)
`GEARMAN_DEFAULT_SOCKET_SEND_SIZE` (int)
`GEARMAN_DEFAULT_SOCKET_RECV_SIZE` (int)
`GEARMAN_MAX_ERROR_SIZE` (int)
`GEARMAN_PACKET_HEADER_SIZE` (int)
`GEARMAN_JOB_HANDLE_SIZE` (int)
`GEARMAN_OPTION_SIZE` (int)
`GEARMAN_UNIQUE_SIZE` (int)
`GEARMAN_MAX_COMMAND_ARGS` (int)
`GEARMAN_ARGS_BUFFER_SIZE` (int)
`GEARMAN_SEND_BUFFER_SIZE` (int)
`GEARMAN_RECV_BUFFER_SIZE` (int)
`GEARMAN_WORKER_WAIT_TIMEOUT` (int)

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open