共用方式為


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

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

如果 fileOffset NULL,則會從快取清除整個檔案。

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

[in] Length

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

[out, optional] IoStatus

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

傳回值

沒有

言論

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

若要快取檔案,請使用 CcInitializeCacheMap

要求

要求 價值
目標平臺 普遍
標頭 ntifs.h (include Ntifs.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe

另請參閱

CcCopyWrite

CcInitializeCacheMap

CcIsFileCached

CcPurgeCacheSection