Scope::isClosed
(PHP 8.6+, True Async 1.0)
public function isClosed(): bool
Verifica si el ámbito está cerrado. Un ámbito se considera cerrado después de una llamada a dispose() o disposeSafely(). No se pueden agregar nuevas corrutinas a un ámbito cerrado.
Valor de retorno
bool — true si el ámbito está cerrado, false en caso contrario.
Ejemplos
Ejemplo #1 Verificar el estado del ámbito
<?php
use Async\Scope;
$scope = new Scope();
var_dump($scope->isClosed()); // bool(false)
$scope->dispose();
var_dump($scope->isClosed()); // bool(true)
Ejemplo #2 Protección contra agregar a un ámbito cerrado
<?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";
}
Ver también
- Scope::isFinished — Verificar si el ámbito ha finalizado
- Scope::isCancelled — Verificar si el ámbito está cancelado
- Scope::dispose — Cerrar el ámbito