CancelSynchronousIo 함수
지정된 스레드에서 실행한 보류 중인 동기 I/O 작업을 취소됨으로 표시합니다.
구문
BOOL WINAPI CancelSynchronousIo(
_In_ HANDLE hThread
);
매개 변수
hThread[in]
스레드에 대한 핸들입니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError 함수를 호출합니다.
이 함수에서 취소 요청을 찾을 수 없는 경우 반환 값은 0이고 GetLastError는 ERROR_NOT_FOUND를 반환합니다.
설명
호출자에게 THREAD_TERMINATE 액세스 권한이 있어야 합니다.
지정된 스레드에 대해 보류 중인 I/O 작업이 있는 경우 CancelSynchronousIo 함수는 이를 취소로 표시합니다. 대부분의 작업 유형은 즉시 취소할 수 있습니다. 실제로 취소되고 호출자에게 알림이 표시되기 전에 완료될 수 있는 작업 유형도 있습니다. CancelSynchronousIo 함수는 취소된 모든 작업이 완료될 때까지 기다리지 않습니다. 자세한 내용은 I/O 완료/취소 지침을 참조하세요.
취소되는 작업은 세 가지 상태 중 하나로 완료됩니다. 완료 상태를 확인해야 합니다. 세 가지 상태는 다음과 같습니다.
- 작업이 정상적으로 완료되었습니다. 취소 요청이 작업 취소 시점에 제출되지 않았을 수 있으므로 작업이 취소된 경우에도 이 상태가 발생할 수 있습니다.
- 작업이 취소되었습니다. GetLastError 함수가 ERROR_OPERATION_ABORTED를 반환합니다.
- 다른 오류가 발생하여 작업이 실패했습니다. GetLastError 함수는 관련 오류 코드를 반환합니다.
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 [데스크톱 앱만 해당] |
헤더 | IoAPI.h(Windows.h 포함); Windows Server 2008 R2, Windows 7, Windows Server 2008 및 Windows Vista의 WinBase.h(Windows.h 포함) |
라이브러리 | Kernel32.lib |
DLL | Kernel32.dll |