CcPurgeCacheSection 函式 (ntifs.h)
CcPurgeCacheSection 例程會從系統快取清除所有或部分快取的檔案。
語法
BOOLEAN CcPurgeCacheSection(
[in] PSECTION_OBJECT_POINTERS SectionObjectPointer,
[in, optional] PLARGE_INTEGER FileOffset,
[in] ULONG Length,
ULONG Flags
);
參數
[in] SectionObjectPointer
結構指標,其中包含檔案物件的區段對象指標。
[in, optional] FileOffset
變數的指標,指定要清除資料的快取檔案內的起始位移。
如果 FileOffsetNULL,則會從快取清除整個檔案。
如果 fileOffset
[in] Length
要清除的位元組範圍長度,從 fileOffset 開始。 如果
Flags
設定為 TRUE,在清除檔案數據之前,取消初始化檔案的任何私人快取對應。
傳回值
言論
文件系統會呼叫 CcPurgeCacheSection,以從快取清除過時的數據。 例如,當檔案遭到截斷但未刪除時,應該呼叫 CcPurgeCacheSection,以清除不再屬於檔案一部分的任何快取數據。
CcPurgeCacheSection 不會清除對應的檔案。
呼叫 CcPurgeCacheSection之前,呼叫端必須以獨佔方式取得檔案,並確保沒有線程,包括呼叫端,已對應或釘選檔案中的任何位元組範圍。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
標頭 | ntifs.h (include Ntifs.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |