FileSystemWatcher::close
(PHP 8.6+, True Async 1.0)
public FileSystemWatcher::close(): void
Interrompe il monitoraggio del file system. L’iterazione tramite foreach termina dopo l’elaborazione degli eventi rimanenti nel buffer.
Idempotente — le chiamate ripetute sono sicure.
Parametri
Nessun parametro.
Esempi
Esempio #1 Chiusura dopo aver ricevuto l’evento desiderato
<?php
use Async\FileSystemWatcher;
$watcher = new FileSystemWatcher('/tmp/uploads');
foreach ($watcher as $event) {
if ($event->filename === 'ready.flag') {
$watcher->close();
}
}
echo "File marcatore rilevato\n";
?>
Esempio #2 Chiusura da un’altra coroutine
<?php
use Async\FileSystemWatcher;
use function Async\spawn;
use function Async\delay;
$watcher = new FileSystemWatcher('/tmp/data');
spawn(function() use ($watcher) {
delay(10_000);
$watcher->close();
});
foreach ($watcher as $event) {
processEvent($event);
}
echo "Monitoraggio terminato per timeout\n";
?>
Vedi anche
- FileSystemWatcher::isClosed — Verifica lo stato
- FileSystemWatcher::__construct — Crea un watcher