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 |