c# - FileSystemWatcher 对硬盘有什么影响?

标签 c# winforms filesystemwatcher

我过去使用过 FileSystemWatcher。但是,我希望有人能够解释它在幕后实际上是如何工作的。

我计划在我正在制作的应用程序中使用它,它将监视大约 5 个驱动器,也许 300,000 个文件。

FileSystemWatcher 实际上是否在驱动器上进行“检查” - 例如,它会导致驱动器磨损吗?它还会影响硬盘驱动器“ sleep ”的能力

这是我不明白它是如何工作的 - 如果它就像在计时器上扫描驱动器等...或者如果它在执行任何操作之前等待来自操作系统的某种类型的通知。

我只是不想实现一些会导致驱动器上发生额外读取并阻止驱动器休眠的操作。

最佳答案

没有那样的事。文件系统驱动程序只是根据您选择的过滤器监视计算机上运行的其他程序请求的正常文件操作。如果存在匹配,则会将一个条目添加到记录操作和文件名的内部缓冲区中。它完成了驱动程序请求并获取一个事件在您的程序中运行。您将获得从该缓冲区传递给您的操作的详细信息。

所以操作本身实际上没有发生任何事情,根本没有额外的磁盘事件。这只是运行的软件。开销很小,不会明显减慢速度。

关于c# - FileSystemWatcher 对硬盘有什么影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19320943/

相关文章:

c# Nhibernate 使用动态参数创建查询

c# - 如何从字符串中为深层属性创建表达式树/lambda

c# - WebBrowser OnPropertyChange 事件未触发

c# - 如何连续读取文本文件

c++ - 如何在 Windows 中使用 filesystemwatcher 观看 samba 共享文件夹/驱动器?

c# - 相当于 C# BigInteger 的 SQL

c# - 为什么 System.Exception 影子 GetType()

c# - 如何将文件从一个目录复制到另一个目录?

c# - 如何将图像放在 ToolStripMenuItem(或类似控件)的文本旁边?

c# - 如何捕获监视文件夹删除事件