FileSystemWatcher.Filter-在缓冲区之前还是之后

本文关键字:之后 Filter- 缓冲区 FileSystemWatcher | 更新日期: 2023-09-27 18:02:13

我正在处理一个项目,其中有大量文件被修改、创建/删除。多个FSW内部缓冲器填充并且必须扩展存在一些问题。

我在网上发现了关于".Filter"是过滤掉BEFORE还是将AFTER检测到的更改添加到缓冲区的冲突信息。如果真的在一个FSW之后,事后进行事件排序可能更有意义。

有人知道这是哪一个吗?

谢谢。

FileSystemWatcher.Filter-在缓冲区之前还是之后

FileSystemWatcher封装本机W32方法ReadDirectoryChangesW,后者负责将文件系统事件放入所提供的缓冲区。在事件已经在专用MatchPattern方法中缓冲后,在CLR端强制执行Filter属性,该方法"告知"监视器是否报告文件事件。

使用Filter属性不太可能对您当前的情况有所帮助。相反,增大InternalBufferSize值以避免溢出缓冲区可能更有利。或者,网络上还有许多其他文件系统事件监视类,它们正着手解决这个相同的问题。