Espera o devuelve el estado de un proceso hijo

# pcntl_wait

(PHP 5, PHP 7, PHP 8)

pcntl_wait — Espera o devuelve el estado de un proceso hijo

### Descripción

function pcntl_wait(int `&$status`, int `$flags` = 0, array `&$resource_usage` = []): int

La función wait suspende la ejecución del proceso actual hasta que uno de los procesos hijos haya terminado, o hasta que se envíe una señal para terminar el proceso actual o para llamar a un gestor. Si el proceso ya ha terminado en el momento de la llamada a la función, es decir, si el proceso es un zombie, entonces la función termina inmediatamente. Todos los recursos del sistema utilizados por el proceso hijo son liberados. Consulte el manual de su sistema en wait(2) para obtener detalles específicos sobre el funcionamiento de wait() en él.

> Nota:

> Esta función es equivalente a llamar a la función pcntl_waitpid() con un `-1` `process_id` y sin `flags`.

### Parámetros

`status`

  pcntl_wait() almacenará la información de estado en el parámetro `status` que puede ser leído con las siguientes funciones: pcntl_wifexited(), pcntl_wifstopped(), pcntl_wifsignaled(), pcntl_wexitstatus(), pcntl_wtermsig() y pcntl_wstopsig().

`flags`

  Si wait3 está disponible en su sistema (esto es el caso de la mayoría de los sistemas BSD-), puede añadir el parámetro opcional `flags`. Si no se proporciona, wait() será utilizado para la llamada al sistema. Si wait3 no está disponible, el parámetro `flags` no tendrá efecto. El valor de `flags` es la combinación de cero o más de las siguientes dos constantes con el operador `OR`:

  Valores posibles para `flags`
  `WNOHANG` | Termina inmediatamente si ningún proceso ha terminado.
  `WUNTRACED` | Termina para los procesos que están detenidos, y para aquellos cuyo resultado no ha sido reportado.

### Valores devueltos

pcntl_wait() devuelve el identificador de proceso que ha terminado, -1 en caso de error o cero si WNOHANG ha sido proporcionado como opción (disponible en los sistemas wait3), y ningún proceso hijo estaba disponible.

### Ver también

- pcntl_fork() - Duplica el proceso actual
- pcntl_signal() - Instala un gestor de señales
- pcntl_wifexited() - Verifica si el código de retorno representa una finalización normal
- pcntl_wifstopped() - Devuelve true si el proceso hijo está detenido
- pcntl_wifsignaled() - Verifica si el código de estado representa una terminación debido a una señal
- pcntl_wexitstatus() - Devuelve el código de un proceso hijo terminado
- pcntl_wtermsig() - Devuelve la señal que causó el término del proceso hijo
- pcntl_wstopsig() - Devuelve la señal que causó la detención del proceso hijo
- pcntl_waitpid() - Espera la finalización de la ejecución de un proceso hijo

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