CcCanIWrite 함수(ntifs.h)
CcCanIWrite 루틴은 호출자가 캐시된 파일에 쓸 수 있는지 여부를 결정합니다.
구문
BOOLEAN CcCanIWrite(
[in] PFILE_OBJECT FileObject,
[in] ULONG BytesToWrite,
[in] BOOLEAN Wait,
[in] UCHAR Retrying
);
매개 변수
[in] FileObject
캐시된 파일의 파일 개체에 대한 포인터입니다.
[in] BytesToWrite
쓸 바이트 수입니다.
[in] Wait
호출자가 캐시된 파일에 쓸 수 있을 때까지 대기 상태로 전환할 수 있으면 TRUE로 설정하고, 그렇지 않으면 FALSE로 설정합니다.
[in] Retrying
이 쓰기 요청에 대해 CcCanIWrite 를 처음 호출하는 경우 FALSE로 설정하고, 그렇지 않으면 TRUE로 설정합니다.
반환 값
CcCanIWrite 는 캐시 관리자가 쓰기 요청을 수락할 수 있으면 TRUE를 반환하고, 그렇지 않으면 FALSE를 반환합니다.
설명
CcCopyWrite 또는 CcFastCopyWrite를 호출하기 전에 CcCanIWrite를 호출해야 합니다.
CcCanIWrite가 TRUE를 반환하는 경우 호출자는 즉시 CcCopyWrite 또는 CcFastCopyWrite를 호출할 수 있습니다.
CcCanIWrite가 FALSE를 반환하는 경우 호출자는 대신 CcDeferWrite를 호출하여 쓰기 요청을 연기해야 합니다.
일반적으로 캐시 관리자는 다음 조건이 해당하는 경우 쓰기 요청을 수락할 수 있습니다.
쓸 데이터의 양이 너무 크지 않습니다.
쓰기 작업을 수행하기에 충분한 메모리가 있습니다.
시스템 캐시의 더티 페이지 수가 더티 페이지 임계값(CcDirtyPageThreshold)을 초과하지 않습니다.
이 파일에 대한 파일별 더티 페이지 임계값이 있는 경우 시스템 캐시에서 이 파일에 대한 더티 페이지 수를 초과하지 않습니다.
파일을 캐시하려면 CcInitializeCacheMap을 사용합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | ntifs.h(Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기