FileSystemWatcher.InternalBufferSize 屬性

定義

取得或設定內部緩衝區的大小 (以位元組為單位)。

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

屬性值

Int32

內部緩衝區大小 (以位元組為單位)。 預設為 8192 (8 KB)。

屬性

備註

您可以將緩衝區設定為 4 KB 或更大,但不能超過 64 KB。 如果您嘗試將 屬性設定 InternalBufferSize 為小於 4096 個位元組,則會捨棄您的值,並將 InternalBufferSize 屬性設定為 4096 個位元組。 為了獲得最佳效能,請在 Intel 型電腦上使用 4 KB 的倍數。

系統會通知檔案變更的元件,並將這些變更儲存在元件建立並傳遞至 API 的緩衝區中。 每個事件最多可以使用 16 個位元組的記憶體,不包括檔案名。 如果短時間內有許多變更,緩衝區可能會溢位。 這會導致元件遺失目錄中的變更追蹤,而且只會提供一個通知。 增加緩衝區的大小可能會防止遺漏檔案系統變更事件。 不過,增加緩衝區大小的成本很高,因為它來自無法交換至磁片的非分頁式記憶體,因此盡可能讓緩衝區保持較小。 若要避免緩衝區溢位,請使用 NotifyFilterIncludeSubdirectories 屬性來篩選掉不必要的變更通知。

適用於

另請參閱