Coroutine::getAwaitingInfo

(PHP 8.6+, True Async 1.0)

public Coroutine::getAwaitingInfo(): array

Gibt Debug-Informationen darueber zurueck, worauf die Coroutine gerade wartet. Nuetzlich fuer die Diagnose blockierter Coroutinen.

Rueckgabewert

array – ein Array mit Warteinformationen. Ein leeres Array, wenn die Informationen nicht verfuegbar sind.

Beispiele

Beispiel #1 Wartezustand diagnostizieren

<?php

use function Async\spawn;
use function Async\suspend;
use function Async\get_coroutines;

spawn(function() {
    Async\delay(5000);
});

suspend();

foreach (get_coroutines() as $coro) {
    if ($coro->isSuspended()) {
        $info = $coro->getAwaitingInfo();
        echo "Coroutine #{$coro->getId()} wartet auf:\n";
        print_r($info);
    }
}

Siehe auch