FileSystemWatcher.InternalBufferSize 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置内部缓冲区的大小(以字节为单位)。
public:
property int InternalBufferSize { int get(); void set(int value); };
public int InternalBufferSize { get; set; }
[System.ComponentModel.Browsable(false)]
public int InternalBufferSize { get; set; }
member this.InternalBufferSize : int with get, set
[<System.ComponentModel.Browsable(false)>]
member this.InternalBufferSize : int with get, set
Public Property InternalBufferSize As Integer
属性值
内部缓冲区的大小(以字节为单位)。 默认值为 8192 (8 KB)。
- 属性
注解
可以将缓冲区设置为 4 KB 或更大,但不能超过 64 KB。 如果尝试将 InternalBufferSize 属性设置为小于 4096 个字节,则会丢弃值, InternalBufferSize 并将属性设置为 4096 字节。 为了获得最佳性能,请在基于 Intel 的计算机上使用 4 KB 的倍数。
系统通知组件文件更改,并将这些更改存储在组件创建并传递给 API 的缓冲区中。 每个事件最多可以使用 16 字节的内存,不包括文件名。 如果在短时间内发生了许多更改,缓冲区可能会溢出。 这会导致组件无法跟踪目录中的更改,并且它只会提供全面通知。 增加缓冲区的大小可以防止缺少文件系统更改事件。 但是,增加缓冲区大小的成本很高,因为它来自无法交换到磁盘的非分页内存,因此请尽可能减小缓冲区。 若要避免缓冲区溢出,请使用 NotifyFilter 和 IncludeSubdirectories 属性筛选掉不需要的更改通知。