CancelSynchronousIo 함수

지정된 스레드에서 발급한 보류 중인 동기 I/O 작업을 취소된 것으로 표시합니다.

구문

BOOL WINAPI CancelSynchronousIo(
  _In_ HANDLE hThread
);

매개 변수

hThread [in]

스레드에 대한 핸들입니다.

반환 값

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 얻으려면 GetLastError 함수를 호출합니다.

이 함수가 취소 요청을 찾을 수 없는 경우 반환 값은 0이고 GetLastErrorERROR_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(투명한 장애 조치)
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

참고 항목

CancelIo

CancelIoEx

파일 관리 함수

동기 및 비동기 I/O