ComponentiCoroutine::getAwaitingInfo

Coroutine::getAwaitingInfo ​

(PHP 8.6+, True Async 1.0)

php
public Coroutine::getAwaitingInfo(): array

Restituisce informazioni di debug su cosa sta attualmente attendendo la coroutine. Utile per diagnosticare coroutine bloccate.

Valore di ritorno ​

array -- un array con informazioni sull'attesa. Nella build attuale l'estensione non lo popola, quindi il metodo restituisce sempre un array vuoto; usa getSuspendLocation() e getTrace() per vedere dove una coroutine è ferma.

Esempi ​

Esempio #1 Diagnosi dello stato di attesa ​

php
<?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()} sta attendendo:\n";
        print_r($info);
    }
}

Vedi anche ​