我正在开发一个项目,其中包含大量文件被修改和创建/删除。多个FSW内部缓冲区填充并且必须扩展时存在一些问题。
我在网上发现有关“.Filter”过滤掉BEFORE
或AFTER
检测到的更改是否会添加到缓冲区的信息存在冲突。如果实际上在事件排序后的单个FSW之后实际上可能更有意义。
有谁知道这是确定的?
感谢。
答案 0 :(得分:2)
FileSystemWatcher
包装本机W32方法ReadDirectoryChangesW
,后者又负责将文件系统事件放入提供的缓冲区中。事件已经在私有Filter
方法中缓冲后,在CLR端强制执行MatchPattern
属性,该方法告诉监视器是否报告文件事件。
使用Filter
财产不太可能有助于您当前的情况。相反,增加InternalBufferSize
值以避免超出缓冲区可能更有利。
或者,网上还有许多其他文件系统事件监视类,用于解决同样的问题。