Função CcPurgeCacheSection (ntifs.h)

A rotina CcPurgeCacheSection limpa todo ou uma parte de um arquivo armazenado em cache do cache do sistema.

Sintaxe

BOOLEAN CcPurgeCacheSection(
  [in]           PSECTION_OBJECT_POINTERS SectionObjectPointer,
  [in, optional] PLARGE_INTEGER           FileOffset,
  [in]           ULONG                    Length,
                 ULONG                    Flags
);

Parâmetros

[in] SectionObjectPointer

Ponteiro para uma estrutura que contém os ponteiros de objeto de seção do objeto de arquivo.

[in, optional] FileOffset

Ponteiro para uma variável que especifica o deslocamento de bytes inicial dentro do arquivo armazenado em cache em que os dados devem ser limpos.

Se FileOffset for NULL, todo o arquivo será limpo do cache.

Se FileOffset não for NULL, somente o intervalo de bytes especificado por FileOffset e Length será limpo.

[in] Length

Comprimento do intervalo de bytes a ser limpo, começando em FileOffset. Se Length for zero, o intervalo de FileOffset até o final do arquivo será limpo. Se FileOffset for NULL, Length será ignorado.

Flags

Defina como TRUE para não inicializar todos os mapas de cache privado para o arquivo antes de limpar os dados do arquivo.

Retornar valor

CcPurgeCacheSection retornará TRUE se os dados do arquivo armazenados em cache tiverem sido limpos com êxito; caso contrário, FALSE .

Comentários

Os sistemas de arquivos chamam CcPurgeCacheSection para limpar dados obsoletos do cache. Por exemplo, quando um arquivo é truncado, mas não excluído, CcPurgeCacheSection deve ser chamado para limpar todos os dados armazenados em cache que não fazem mais parte do arquivo.

CcPurgeCacheSection não limpará arquivos mapeados.

Antes de chamar CcPurgeCacheSection, o chamador deve adquirir o arquivo exclusivamente e garantir que nenhum thread, incluindo o chamador, tenha mapeado ou fixado qualquer intervalo de bytes no arquivo.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho ntifs.h (inclua Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Confira também

CcFlushCache

CcInitializeCacheMap

CcIsFileCached

CcUninitializeCacheMap

MmFlushImageSection