PHP 8.4.1 Released!

Fiber::start

(PHP 8 >= 8.1.0)

Fiber::startDémarre l'exécution de la fibre

Description

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

Une liste variadique d'arguments à fournir à la fonction utilisée lors de la construction de la fibre.

Si la fibre a déjà été démarrée lorsque cette méthode est appelée, une erreur FiberError sera émise.

Liste de paramètres

args

Les arguments à utiliser lors de l'invocation de la fonction donnée au constructeur de la fibre.

Valeurs de retour

La valeur fournie au premier appel à Fiber::suspend() ou null si la fibre retourne. Si la fibre lance une exception avant de se suspendre, elle sera émise lors de l'appel à cette méthode.

add a note

User Contributed Notes 1 note

up
4
Astrid
2 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