Scope::isClosed

(PHP 8.6+, True Async 1.0)

public function isClosed(): bool

스코프가 닫혔는지 확인합니다. 스코프는 dispose() 또는 disposeSafely() 호출 후 닫힌 것으로 간주됩니다. 닫힌 스코프에는 새로운 코루틴을 추가할 수 없습니다.

반환값

bool — 스코프가 닫힌 경우 true, 그렇지 않으면 false.

예제

예제 #1 스코프 상태 확인

<?php

use Async\Scope;

$scope = new Scope();

var_dump($scope->isClosed()); // bool(false)

$scope->dispose();

var_dump($scope->isClosed()); // bool(true)

예제 #2 닫힌 스코프에 추가 방지

<?php

use Async\Scope;

$scope = new Scope();
$scope->dispose();

if (!$scope->isClosed()) {
    $scope->spawn(function() {
        echo "This coroutine will not be created\n";
    });
} else {
    echo "Scope is already closed\n";
}

참고