有没有人知道当我的应用程序更改目录中的文件时如何可靠地禁用 FileSystemWatcher 对象,以便我只监视目录的外部更改?
我尝试EnableRaisingEvents
在执行写入之前立即设置为 false 并在之后立即将其设置回 true ,但似乎这种方法不可靠,偶尔我仍然会触发事件。
我能想到的唯一另一件事是在执行写入后等待一小段时间,让操作系统在重新启用 FSW 之前完成对目录的修改,但这似乎很不自然,我不喜欢它。
更糟糕的是,该目录可能包含许多文件,这些文件的身份超出了我的知识和控制范围,因此我不能只是等待事件针对特定文件触发然后忽略它。一次修改后可能会触发任意数量的 FSW 事件(因为可能会更新许多文件)。