繁体   English   中英

FileSystemWatcher检测到连续变化

[英]FileSystemWatcher detects continuous change

我正在使用FileSystemWatcher来检测文件中的更改-我监视目录,然后查看通过事件args传入的文件是否与我感兴趣的文件匹配。

我们遇到一个客户的情况,不断发生更改的事件,但是当我检查修改后的日期时,什么都没有更改。

这给我们造成了各种各样的问题。 我可以(而且现在)在对事件采取行动之前检查上次修改日期是否已更改。

我无法轻松调试它,因为我无法复制它,尽管我可以在客户端计算机上放置调试版本-尽管有时它会停止发生。

但是,我想知道是否可以避免此问题的已知原因。

[编辑]我最初没有加这个,因为我敢肯定它不是有关,但代码的前一版本进行了很大的改动,以有问题的文件,超过我们可以在代码中处理的。 但是,当前版本没有该问题,此后机器已重置,因此我无法想象它导致了当前问题。

可能还会发生其他更改事件,例如文件属性或安全性ACL修改。 看一下通知过滤器:

https://msdn.microsoft.com/zh-CN/library/system.io.notifyfilters(v=vs.110).aspx

您可以将其设置为过滤以仅包括所需的更改。 在这种情况下,听起来您只需要修改写时间。 您可以将其分配给观察程序上的NotifyFilter属性。

很难说出您实际情况中发生了什么,但是可能会更改文件属性(例如,通过索引器)或某些此类后台过程。 这些修改可能不会导致上次写入时间发生变化,但仍可能导致观察者触发。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM