Scope::isClosed
(PHP 8.6+, True Async 1.0)
public function isClosed(): bool
Vérifie si le scope est fermé. Un scope est considéré comme fermé après un appel à dispose() ou disposeSafely(). De nouvelles coroutines ne peuvent pas être ajoutées à un scope fermé.
Valeur de retour
bool — true si le scope est fermé, false sinon.
Exemples
Exemple #1 Vérification de l’état du scope
<?php
use Async\Scope;
$scope = new Scope();
var_dump($scope->isClosed()); // bool(false)
$scope->dispose();
var_dump($scope->isClosed()); // bool(true)
Exemple #2 Protection contre l’ajout à un scope fermé
<?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";
}
Voir aussi
- Scope::isFinished — Vérifier si le scope est terminé
- Scope::isCancelled — Vérifier si le scope est annulé
- Scope::dispose — Fermer le scope