Scope::__construct
(PHP 8.6+, True Async 1.0)
public function __construct()
Crea un nuovo Scope radice. Uno scope radice non ha uno scope genitore e funge da unita’ indipendente per la gestione del ciclo di vita delle coroutine.
Esempi
Esempio #1 Utilizzo base
<?php
use Async\Scope;
$scope = new Scope();
$scope->spawn(function() {
echo "Coroutine in un nuovo scope\n";
});
$scope->awaitCompletion();
Esempio #2 Creazione di scope indipendenti multipli
<?php
use Async\Scope;
$scopeA = new Scope();
$scopeB = new Scope();
$scopeA->spawn(function() {
echo "Task A\n";
});
$scopeB->spawn(function() {
echo "Task B\n";
});
// La cancellazione di uno scope non influenza l'altro
$scopeA->cancel();
// $scopeB continua a funzionare
$scopeB->awaitCompletion();
Vedi anche
- Scope::inherit — Crea uno Scope figlio
- Scope::spawn — Avvia una coroutine nello scope