Documentación offline PHP master

GearmanWorker::wait

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

GearmanWorker::wait

Espera una actividad de uno o varios servidores de trabajos

Descripción#

public GearmanWorker::wait(): bool
```php

Pone a espera al agente de una actividad de uno o varios servidores de trabajos durante un funcionamiento en modo I/O no bloqueante. En caso de fallo, se emitirá una advertencia de nivel `E_WARNING` con el contenido del último error Gearman ocurrido.

## Parámetros

Esta función no contiene ningún parámetro.

## Valores devueltos

Esta función retorna `true` en caso de éxito o `false` si ocurre un error.

## Ejemplos

Ejecutar un agente en modo no bloqueante
addOptions(GEARMAN_WORKER_NON_BLOCKING); ## Añade un servidor por defecto (localhost, puerto 4730) $worker->addServer(); ## Añade una función "reverse" $worker->addFunction('reverse', 'reverse_fn'); ## Intenta obtener un trabajo while (@$worker->work() || $worker->returnCode() == GEARMAN_IO_WAIT || $worker->returnCode() == GEARMAN_NO_JOBS) { if ($worker->returnCode() == GEARMAN_SUCCESS) continue; echo "Esperando el primer trabajo...\n"; if (!@$worker->wait()) { if ($worker->returnCode() == GEARMAN_NO_ACTIVE_FDS) { # No estamos conectados a ningún servidor; por lo tanto, esperamos un poco # antes de intentar una reconexión. sleep(5); continue; } break; } } echo "Error del agente: " . $worker->error() . "\n"; function reverse_fn($job) { return strrev($job->workload()); } ?>

```php

Véase también#

GearmanWorker::work