2012-06-26 19 views
3

目前我使用FileSystemWatcher类来观看文件的变化,但在我的情况,我有上百万的系统不同 - 不同位置的文件,以监测在C#中的文件更改Windows系统,所以我要创建造成性能问题的数百万个fileststemwatcher类实例。如何使用FileSystemWatcher的

请告诉我怎样才能最大限度地提高性能或有另一种方式来监控在C#中的所有文件。

+0

明显question-您使用的是IncludeSubdirectories财产? – SteveCav

+0

为什么你必须创建数百万个fsw类的实例?你使用“IncludeSubdirectories”功能和文件名过滤吗? – Larry

回答

3

FileSystemWatcher的是正常的方式。我建议你观看更高级别的文件 - 例如。所有更改驱动器级,只有那些在文件夹中你感兴趣的回应。

一旦你得到例如,“改变”事件,您可以检查传递给FileSystemEventArgs的FULLPATH属性您事件处理器。

我假定你已经看在文件夹级别,而不是单个文件。

+0

如果我会在驾驶级别观察所有变化,那么他们有机会获得更多不寻常的变化事件。因为例如,如果一个上午监控驱动器C:然后他们有很多的过程,是不断变化的一些文件,比如(日志文件),在这种情况下,也不会造成任何性能问题。 – pawanplus