current_coroutine

(PHP 8.6+, True Async 1.0)

current_coroutine() — Повертає об’єкт поточної виконуваної корутини.

Опис

current_coroutine(): Async\Coroutine

Значення, що повертаються

Об’єкт Async\Coroutine, що представляє поточну корутину.

Помилки/Винятки

Async\AsyncException — якщо викликано поза корутиною.

Приклади

Приклад #1 Отримання ідентифікатора корутини

<?php
use function Async\spawn;
use function Async\current_coroutine;

spawn(function() {
    $coro = current_coroutine();
    echo "Coroutine #" . $coro->getId() . "\n";
});
?>

Приклад #2 Діагностика

<?php
use function Async\spawn;
use function Async\current_coroutine;

spawn(function() {
    $coro = current_coroutine();

    echo "Spawned from: " . $coro->getSpawnLocation() . "\n";
    echo "Status: " . ($coro->isRunning() ? 'running' : 'suspended') . "\n";
});
?>

Дивіться також