Je surveille les changements du système de fichiers dans un répertoire spécifique en utilisant le OSX FSEventStream. Je regardais la documentation ici et j'ai trouvé un drapeau intéressant décrit, kFSEventStreamCreateFlagIgnoreSelf.
Selon la documentation, en utilisant ce drapeau, le framework FSEvents ne vous notifiera pas des "événements déclenchés par le processus actuel".
Cela semble génial. C'est exactement ce que je veux, mais en pratique, j'ai constaté que je reçois encore des événements déclenchés par le processus actuel.
Dans mes tests limités, si le processus de surveillance crée un nouveau fichier, ou renomme un fichier existant, un événement est toujours déclenché. Alors qu'au moins certaines modifications de fichiers existants ne déclenchent pas d'événements.
En me basant sur la documentation limitée (et le nom du drapeau), je ne m'attends PAS à ce que des événements soient déclenchés par le processus actuel.
Ma question est donc double : -- Est-ce un comportement attendu ? J'ai peur de compter sur le comportement tel qu'il existe actuellement, qu'il pourrait être involontaire et qu'il pourrait changer à l'avenir.
Deuxièmement : -- Si c'est le cas, est-ce que quelqu'un sait quels événements je peux encore attendre de recevoir en utilisant ce drapeau.