CcFlushCache 函式 (ntifs.h)

CcFlushCache 例程會將快取檔案的所有或部分排清到磁碟。

語法

void CcFlushCache(
  [in]            PSECTION_OBJECT_POINTERS SectionObjectPointer,
  [in, optional]  PLARGE_INTEGER           FileOffset,
  [in]            ULONG                    Length,
  [out, optional] PIO_STATUS_BLOCK         IoStatus
);

參數

[in] SectionObjectPointer

包含檔案物件的區段對象指標 之SECTION_OBJECT_POINTERS 結構的指標。

[in, optional] FileOffset

變數的指標,指定快取檔案內要排清數據的起始位移。

如果 FileOffsetNULL,則會從快取排清整個檔案。

如果 FileOffset 不是 NULL,則只會排清 FileOffsetLength 指定的位元組範圍。

[in] Length

要排清的位元組範圍長度,從 FileOffset 開始。 如果 FileOffsetNULL,則會忽略 Length

[out, optional] IoStatus

結構指標,該結構會接收最終完成狀態和排清作業的相關信息。 如果數據已成功排清, IoStatus.Status 會包含STATUS_SUCCESS。 如果並非所有數據都已成功排清, IoStatus.Information 會包含已排清的實際位元組數目。 否則, IoStatus.Information 會包含 Length 中指定的值。

傳回值

備註

CcFlushCache 沒有 Wait 參數。 因此,呼叫端必須能夠進入等候狀態,直到所有數據都排清為止。

若要快取檔案,請使用 CcInitializeCacheMap

規格需求

需求
目標平台 Universal
標頭 ntifs.h (包含 Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe

另請參閱

CcCopyWrite

CcInitializeCacheMap

CcIsFileCached

CcPurgeCacheSection