La classe EvStat
(PECL ev >= 0.2.0)
Introduction
La classe EvStat surveille un fichier du système de fichiers afin de regarder toutes modifications de ces attributs. Elle appelle la commande stat() sur ce chemin, à intervalle régulier (ou lorsque l'OS signale une modification) et regarde s'il a été modifié depuis la dernière fois, et appelle la fonction de rappel si c'est le cas.
Le chemin n'a pas besoin d'exister : la modification de "le chemin existe"
vers "le chemin n'existe pas est une modification de statut comme un autre.
La condition "le chemin n'existe pas" est signifié par la valeur 0 de
l'élément 'nlink'
(retourné par la méthode
EvStat::attr()).
Le chemin ne doit pas se terminer par un slash, ou contenir des composants
spéciaux comme '.'
ou ..
.
Le chemin doit être absolu : s'il est relatif, et que le dossier de travail
change, alors le comportement sera indéfini.
Sachant qu'il n'y a pas d'interface de notification de changement portable,
l'implentation portable appelle simplement la commande
stat() sur le chemin pour vérifier les modifications.
Pour ce cas, un intervalle régulier peut être spécifié. S'il est spécifié,
un intervalle de 0.0
(vivement recommandé) alors
une valeur par défaut non spécifié sera utilisé (au alantour de 5 secondes,
et peut être modifié dynamiquement). libev
va également imposer un intervalle minimum qui est actuellement au alentour
de 0.1
, ce qui est largement suffisant.
Ce type de watcher n'est pas prévu pour un nombre important de watchers EvStat, sachant que même avec les notifications systèmes sur les modifications supportées par l'OS, ceci prend beaucoup de ressources.
Synopsis de la classe
$path
,
float
$interval
,
callable
$callback
[,
mixed
$data
= NULL
[,
int
$priority
= 0
]] )$path
,
float
$interval
,
callable
$callback
[,
mixed
$data
= NULL
[,
int
$priority
= 0
]] ) : voidSommaire
- EvStat::attr — Retourne la valeur la plus récente détectée par Ev
- EvStat::__construct — Construit un objet EvStat watcher
- EvStat::createStopped — Crée un objet EvStat watcher stoppé
- EvStat::prev — Retourne le jeu précédent retourné par EvStat::attr
- EvStat::set — Configure le watcher
- EvStat::stat — Initialise l'appel à stat
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-class.evstat.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.