RIO_NOTIFICATION_COMPLETION_TYPE 열거형(mswsock.h)
RIO_NOTIFICATION_COMPLETION_TYPE 열거형은 Winsock 등록 I/O 확장을 사용하여 데이터를 보내거나 받을 때 RIONotify 함수에 사용할 완료 큐 알림 유형을 지정합니다.
Syntax
typedef enum _RIO_NOTIFICATION_COMPLETION_TYPE {
RIO_EVENT_COMPLETION = 1,
RIO_IOCP_COMPLETION = 2
} RIO_NOTIFICATION_COMPLETION_TYPE, *PRIO_NOTIFICATION_COMPLETION_TYPE;
상수
RIO_EVENT_COMPLETION 값: 1 이벤트 핸들은 완료 큐 알림을 알리는 데 사용됩니다. 이벤트 핸들은 RIO_CQ 만들 때 RIOCreateCompletionQueue 함수에 전달된 RIO_NOTIFICATION_COMPLETION 구조체의EventNotify.EventHandle 멤버로 제공됩니다. 이 RIO_CQ대한 RIONotify 함수가 완료되면 이벤트가 발생합니다. RIO_CQ 만들 때 RIOCreateCompletionQueue 함수에 전달된 RIO_NOTIFICATION_COMPLETION 구조체의 Event.NotifyReset 멤버는 RIONotify 함수 호출의 일부로 이벤트를 다시 설정해야 하는지 여부를 나타냅니다. |
RIO_IOCP_COMPLETION 값: 2 I/O 완료 포트 핸들은 완료 큐 알림을 알리는 데 사용됩니다. I/O 완성 포트 핸들은 RIO_CQ 만들 때 RIOCreateCompletionQueue 함수에 전달된 RIO_NOTIFICATION_COMPLETION 구조체의Iocp.IocpHandle 멤버로 제공됩니다. 이 RIO_CQ대한 RIONotify 함수가 완료되면 GetQueuedCompletionStatus 또는 GetQueuedCompletionStatusEx 함수를 사용하여 검색할 수 있는 I/O 완료 포트에 대한 항목이 큐에 대기합니다. 큐에 대기 중인 항목에는 반환된 lpCompletionKey 매개 변수 값이 RIO_NOTIFICATION_COMPLETIONIocp.CompletionKey 멤버에 지정된 값으로 설정되고 반환된 lpOverlapped 매개 변수 값은 RIO_NOTIFICATION_COMPLETION 구조체의 Iocp.Overlapped 멤버에 지정된 값으로 설정됩니다. RIO_NOTIFICATION_COMPLETIONIocp.Overlapped 멤버는 NULL이 아닌 값이 됩니다. |
설명
RIO_NOTIFICATION_COMPLETION_TYPE 열거형은 Winsock 등록 I/O 확장과 함께 사용하여 RIO_CQ 사용할 I/O 완성 유형을 지정합니다. 열거형 값은 RIO_CQ 만들 때 RIOCreateCompletionQueue 함수에 전달된 RIO_NOTIFICATION_COMPLETION 구조체에 설정됩니다.
RIO_CQ 만들 때 RIO_NOTIFICATION_COMPLETION 구조는 애플리케이션이 완료 큐 알림을 받는 방법을 결정합니다. 완료 큐를 만들 때 RIO_NOTIFICATION_COMPLETION 구조가 제공되는 경우 애플리케이션은 RIONotify 함수를 호출하여 완료 큐 알림을 요청할 수 있습니다. 일반적으로 이 알림은 완료 큐가 비어 있지 않을 때 발생합니다. 이 문제는 즉시 또는 다음 완료 항목이 완료 큐에 삽입될 때 발생할 수 있습니다. 완료 큐 알림이 실행되면 애플리케이션은 다른 완료 큐 알림을 받으려면 RIONotify 를 호출해야 합니다.
완료 큐 알림에는 두 가지 옵션을 사용할 수 있습니다.
- 이벤트 핸들.
- I/O 완료 포트
RIO_NOTIFICATION_COMPLETION 구조의 Type 멤버가 RIO_EVENT_COMPLETION 설정된 경우 이벤트 핸들을 사용하여 완료 큐 알림을 보냅니다. 이벤트 핸들은 RIOCreateCompletionQueue 함수에 전달된 RIO_NOTIFICATION_COMPLETION 구조체에서 EventNotify.EventHandle 멤버로 제공됩니다.
RIO_NOTIFICATION_COMPLETION 구조의 Type 멤버가 RIO_IOCP_COMPLETION 설정된 경우 I/O 완료 포트를 사용하여 완료 큐 알림을 보냅니다. I/O 완료 포트 핸들은 RIOCreateCompletionQueue 함수에 전달된 RIO_NOTIFICATION_COMPLETION 구조체에서 Iocp.IocpHandle 멤버로 제공됩니다. 이 RIO_CQ대한 RIONotify 함수가 완료되면 GetQueuedCompletionStatus 또는 GetQueuedCompletionStatusEx 함수를 사용하여 검색할 수 있는 I/O 완료 포트에 대한 항목이 큐에 대기합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
머리글 | mswsock.h |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기