Condividi tramite


Funzione CcPurgeCacheSection (ntifs.h)

Il CcPurgeCacheSection routine elimina tutto o una parte di un file memorizzato nella cache di 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 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 Lunghezza.

[in] Length

Lunghezza dell'intervallo di byte da eliminare, a partire da FileOffset. Se lunghezza è 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 restituisce TRUE se i dati del file memorizzati nella cache sono stati eliminati correttamente, FALSE in caso contrario.

Osservazioni

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 tutti 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.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione ntifs.h (include Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Vedere anche

CcFlushCache

CcInitializeCacheMap

CcIsFileCached

CcUninitializeCacheMap

MmFlushImageSection