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 屬性來篩選掉不必要的變更通知。