CascadiaPHP 2024

Fiber::start

(PHP 8 >= 8.1.0)

Fiber::startFiberin çalışmasını başlatır

Açıklama

public Fiber::start(mixed ...$değerler): mixed

Fiberin başlatılırken çağrılacak geri çağırım işlevine sağlanacak bağımsız değişken sayısı değişiklik gösterebilir.

Fiber zaten bu yöntem çağrılarak başlatılmışsa FiberError istisnası oluşur.

Bağımsız Değişkenler

değerler

Fiber kurucusunun çağıracağı geri çağırım işlevine aktarılacak değerler.

Dönen Değerler

İlk Fiber::suspend() çağrısına aktarılan değer veya fiber zaten dönmüşse null döner. Fiber askıya alınmadan önce bir istisna oluşmuşsa, o istisna bu yöntemin çağrısında yavrulanır.

add a note

User Contributed Notes 1 note

up
3
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