Fiber::start

(PHP 8 >= 8.1.0)

Fiber::startStart execution of the fiber

Description

public Fiber::start(mixed ...$args): mixed

A variadic list of arguments to provide to the callable used when constructing the fiber.

If the fiber has already been started when this method is called, a FiberError will be thrown.

Parameters

args

The arguments to use when invoking the callable given to the fiber constructor.

Return Values

The value provided to the first call to Fiber::suspend() or null if the fiber returns. If the fiber throws an exception before suspending, it will be thrown from the call to this method.

add a note

User Contributed Notes 1 note

up
0
Astrid
3 years ago
Maybe this helps wrapping your had around the start-suspend-resume-return circle:$fiber = new Fiber(    function($one) {        $two = Fiber::suspend($one);        $three = Fiber::suspend($two);        $four = Fiber::suspend($three);        $five = Fiber::suspend($four);        $six = Fiber::suspend($five);        return $six;    });print $fiber->start(1);print $fiber->resume(2);print $fiber->resume(3);print $fiber->resume(4);print $fiber->resume(5);print $fiber->resume(6);print $fiber->getReturn();//prints 123456
To Top