Reanuda la ejecución de la fibra con una excepción

# Fiber::throw

(PHP 8 >= 8.1.0)

Fiber::throw — Reanuda la ejecución de la fibra con una excepción

### Descripción

public function Fiber::throw(Throwable `$exception`): mixed

Reanuda la fibra lanzando la excepción dada desde la llamada Fiber::suspend() en curso.

Si la fibra no está suspendida cuando se llama a este método, se emitirá una excepción FiberError.

### Parámetros

`exception`

  La excepción a lanzar en la fibra desde la llamada Fiber::suspend() en curso.

### Valores devueltos

El valor proporcionado en la próxima llamada a Fiber::suspend() o `null` si la fibra retorna. Si la fibra lanza una excepción antes de suspenderse, será emitida al llamar a este método.

### Ejemplos

    <?php

    $fiber = new Fiber(function () {
       try {
           // Suspende la ejecución de la fibra declarando un punto de interrupción
           Fiber::suspend();
       } catch (Throwable $e) {
           echo $e->getMessage();
       }
    });

    $fiber->start();

    // Reanuda la ejecución de la fibra pasando
    // la Excepción a lanzar en el punto de interrupción
    $fiber->throw(new Exception('Mensaje de una excepción lanzada en el punto de interrupción actual'));

    ?>

Resultado del ejemplo anterior es similar a:

    Mensaje de una excepción lanzada en el punto de interrupción actual

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