Funzione CcPurgeCacheSection (ntifs.h)

La routine CcPurgeCacheSection elimina tutto o una parte di un file memorizzato nella cache del sistema.

Sintassi

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

Parametri

[in] SectionObjectPointer

Puntatore a una struttura contenente i puntatori a oggetti della sezione dell'oggetto file.

[in, optional] FileOffset

Puntatore a una variabile che specifica l'offset di byte iniziale all'interno del file memorizzato nella cache in cui i dati devono essere eliminati.

Se FileOffset è NULL, l'intero file viene eliminato dalla cache.

Se FileOffset non è NULL, viene eliminato solo l'intervallo di byte specificato da FileOffset e Length .

[in] Length

Lunghezza dell'intervallo di byte da eliminare, a partire da FileOffset. Se Length è zero, l'intervallo compreso tra FileOffset e la fine del file viene eliminato. Se FileOffset è NULL, la lunghezza viene ignorata.

Flags

Impostare su TRUE per annullare l'inizializzazione delle mappe della cache privata per il file prima di eliminare i dati del file.

Valore restituito

CcPurgeCacheSection restituisceTRUE se i dati dei file memorizzati nella cache sono stati eliminati correttamente, FALSE in caso contrario.

Commenti

I file system chiamano CcPurgeCacheSection per eliminare i dati non aggiornati dalla cache. Ad esempio, quando un file viene troncato ma non eliminato, CcPurgeCacheSection deve essere chiamato per eliminare i dati memorizzati nella cache che non fanno più parte del file.

CcPurgeCacheSection non elimina i file mappati.

Prima di chiamare CcPurgeCacheSection, il chiamante deve acquisire il file esclusivamente e assicurarsi che nessun thread, incluso il chiamante, abbia mappato o aggiunto qualsiasi intervallo di byte nel file.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione ntifs.h (include Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Vedi anche

CcFlushCache

CcInitializeCacheMap

CcIsFileCached

CcUninitializeCacheMap

MmFlushImageSection