다음을 통해 공유


CcPurgeCacheSection 함수(ntifs.h)

CcPurgeCacheSection 루틴은 시스템 캐시에서 캐시된 파일의 전부 또는 일부를 제거합니다.

통사론

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

매개 변수

[in] SectionObjectPointer

파일 개체의 섹션 개체 포인터를 포함하는 구조체에 대한 포인터입니다.

[in, optional] FileOffset

데이터를 제거할 캐시된 파일 내에서 시작 바이트 오프셋을 지정하는 변수에 대한 포인터입니다.

FileOffset NULL경우 전체 파일이 캐시에서 제거됩니다.

FileOffset NULL않으면 FileOffset에서 지정한 바이트 범위만 Length 제거됩니다.

[in] Length

FileOffset시작하여 제거할 바이트 범위의 길이입니다. Length 0이면 FileOffset부터 파일 끝까지의 범위가 제거됩니다. FileOffset NULL경우 Length 무시됩니다.

Flags

파일 데이터를 제거하기 전에 파일에 대한 프라이빗 캐시 맵을 초기화하지 않으면 TRUE 설정합니다.

반환 값

CcPurgeCacheSection 캐시된 파일 데이터가 성공적으로 제거되면 TRUE 반환하고, 그렇지 않으면 FALSE .

발언

파일 시스템은 CcPurgeCacheSection 호출하여 캐시에서 부실 데이터를 제거합니다. 예를 들어 파일이 잘렸지만 삭제되지 않은 경우 CcPurgeCacheSection 호출하여 더 이상 파일의 일부가 아닌 캐시된 데이터를 제거해야 합니다.

CcPurgeCacheSection 매핑된 파일을 제거하지 않습니다.

CcPurgeCacheSection호출하기 전에 호출자는 파일을 단독으로 획득하고 호출자를 포함한 스레드가 파일의 바이트 범위를 매핑하거나 고정하지 않았는지 확인해야 합니다.

요구 사항

요구
대상 플랫폼 보편적
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

참고 항목

ccFlushCache

ccInitializeCacheMap

CcIsFileCached

CcUninitializeCacheMap

MmFlushImageSection