다음을 통해 공유


SetFileIoOverlappedRange 함수(fileapi.h)

가상 주소 범위를 지정된 파일 핸들과 연결합니다. 이는 커널이 이 범위 내에서 겹치는 구조체를 사용하여 추가 비동기 I/O 요청을 최적화해야 했음을 나타냅니다. 겹치는 범위는 메모리에서 잠근 다음 파일이 닫혀 있을 때 잠금 해제됩니다. 범위가 파일 핸들과 연결되면 연결을 해제할 수 없습니다.

구문

BOOL SetFileIoOverlappedRange(
  [in] HANDLE FileHandle,
  [in] PUCHAR OverlappedRangeStart,
  [in] ULONG  Length
);

매개 변수

[in] FileHandle

파일에 대한 핸들입니다.

이 파일 핸들은 FILE_READ_ATTRIBUTES 액세스 권한으로 열어야 합니다.

[in] OverlappedRangeStart

범위의 시작 주소입니다.

[in] Length

범위의 길이(바이트)입니다.

반환 값

성공하면 0이 아닌 값을 반환하고 그렇지 않으면 0을 반환합니다.

확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

SetFileIoOverlappedRange 는 많은 수의 비동기 비동기 I/O를 발급하고 정의된 겹치는 구조체 범위를 사용하는 애플리케이션에서 성능을 향상시키는 데 사용할 수 있습니다. 이 구조체 범위는 메모리에 잠겨 있으므로 I/O 요청의 결과로 겹치는 구조를 업데이트할 때 커널이 특정 잠금을 획득하지 않도록 방지할 수 있습니다.

SetFileIoOverlappedRange 를 사용하려면 호출자에게 SeLockMemoryPrivilege 액세스 권한이 있어야 합니다.

이 함수는 버퍼링 및 동기 I/O에 영향을 주지 않습니다.

Windows 8 및 Windows Server 2012에서 이 함수는 다음 기술을 통해 지원됩니다.

기술 지원됨
SMB(서버 메시지 블록) 3.0 프로토콜 Yes
SMB 3.0 TFO(투명 장애 조치(failover)) Yes
SO(스케일 아웃 파일 공유)를 사용하는 SMB 3.0 Yes
CsvFS(클러스터 공유 볼륨 파일 시스템) Yes
ReFS(Resilient File System) Yes

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 fileapi.h(Windows.h, WinBase.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

파일 관리 함수