Partager via


CcPurgeCacheSection, fonction (ntifs.h)

La routine CcPurgeCacheSection purge tout ou partie d’un fichier mis en cache à partir du cache système.

Syntaxe

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

Paramètres

[in] SectionObjectPointer

Pointeur vers une structure contenant les pointeurs d’objet de section de l’objet de fichier.

[in, optional] FileOffset

Pointeur vers une variable qui spécifie le décalage d’octets de départ dans le fichier mis en cache où les données doivent être purgées.

Si FileOffset est NULL, le fichier entier est vidé du cache.

Si FileOffset n’est pas NULL, seule la plage d’octets spécifiée par FileOffset et longueur est vidée.

[in] Length

Longueur de la plage d’octets à vider, en commençant à FileOffset. Si longueur est égale à zéro, la plage comprise entre FileOffset à la fin du fichier est vidée. Si FileOffset est NULL, longueur est ignorée.

Flags

Définissez sur TRUE pour annuler l’initialisation des mappages de cache privé pour le fichier avant de purger les données du fichier.

Valeur de retour

CcPurgeCacheSection retourne TRUE si les données de fichier mises en cache ont été correctement purgées, FALSE sinon.

Remarques

Les systèmes de fichiers appellent CcPurgeCacheSection pour vider les données obsolètes du cache. Par exemple, lorsqu’un fichier est tronqué mais qu’il n’est pas supprimé, CcPurgeCacheSection doit être appelé pour vider les données mises en cache qui ne font plus partie du fichier.

CcPurgeCacheSection ne vide pas les fichiers mappés.

Avant d’appeler CcPurgeCacheSection, l’appelant doit acquérir le fichier exclusivement et s’assurer qu’aucun thread, y compris l’appelant, a mappé ou épinglé une plage d’octets dans le fichier.

Exigences

Exigence Valeur
plateforme cible Universel
d’en-tête ntifs.h (include Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Voir aussi

ccFlushCache

CcInitializeCacheMap

CcIsFileCached

CcUninitializeCacheMap

mmFlushImageSection