다음을 통해 공유


CreateThreadpoolIo 함수(threadpoolapiset.h)

새 I/O 완성 개체를 만듭니다.

구문

PTP_IO CreateThreadpoolIo(
  [in]                HANDLE                fl,
  [in]                PTP_WIN32_IO_CALLBACK pfnio,
  [in, out, optional] PVOID                 pv,
  [in, optional]      PTP_CALLBACK_ENVIRON  pcbe
);

매개 변수

[in] fl

이 I/O 완성 개체에 바인딩할 파일 핸들입니다.

[in] pfnio

파일에서 겹치는 I/O 작업이 완료될 때마다 호출할 콜백 함수입니다. 자세한 내용은 IoCompletionCallback을 참조하세요.

[in, out, optional] pv

콜백 함수에 전달할 선택적 애플리케이션 정의 데이터입니다.

[in, optional] pcbe

콜백을 실행할 환경을 정의하는 TP_CALLBACK_ENVIRON 구조체에 대한 포인터입니다. InitializeThreadpoolEnvironment 함수를 사용하여 이 함수를 호출하기 전에 구조를 초기화합니다.

이 매개 변수가 NULL이면 콜백이 기본 콜백 환경에서 실행됩니다. 자세한 내용은 InitializeThreadpoolEnvironment를 참조하세요.

반환 값

함수가 성공하면 I/O 개체를 정의하는 TP_IO 구조체에 대한 포인터를 반환합니다. 애플리케이션은 이 구조체의 멤버를 수정하지 않습니다.

이 함수가 실패하면 NULL을 반환합니다. 확장된 오류 정보를 검색하려면 GetLastError를 호출합니다.

설명

겹치는 I/O 완료 콜백 수신을 시작하려면 StartThreadpoolIo 함수를 호출합니다.

I/O 완료 개체에 바인딩된 파일 핸들에 알림 모드가 FILE_SKIP_COMPLETION_PORT_ON_SUCCESS 비동기 I/O 작업이 성공하면 즉시 반환되는 경우 I/O 완료 콜백 함수가 호출되지 않으며 threadpool I/O 알림을 취소해야 합니다. 자세한 내용은 CancelThreadpoolIo를 참조하세요.

이 함수를 사용하는 애플리케이션을 컴파일하려면 _WIN32_WINNT 0x0600 이상으로 정의합니다.

요구 사항

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

참고 항목

CancelThreadpoolIo

CloseThreadpoolIo

StartThreadpoolIo

스레드 풀

WaitForThreadpoolIoCallbacks