다음을 통해 공유


RpcServerUnsubscribeForNotification 함수(rpcasync.h)

RpcServerUnsubscribeForNotification 함수는 RPC 알림에서 서버를 구독 취소합니다.

구문

RPC_STATUS RpcServerUnsubscribeForNotification(
  [in]  RPC_BINDING_HANDLE Binding,
  [in]  RPC_NOTIFICATIONS  Notification,
  [out] unsigned long      *NotificationsQueued
);

매개 변수

[in] Binding

RPC_BINDING_HANDLERpcServerSubscribeForNotification에 대한 이전 호출에 지정된 현재 RPC 호출에 대한 바인딩 핸들을 포함하는 구조체입니다. RPC가 호출을 디스패치한 것과 동일한 스레드에서 이 함수가 호출되면 이 매개 변수를 NULL로 설정할 수 있습니다. 그렇지 않으면 명시적 바인딩 핸들이 이 매개 변수에 전달되어야 합니다.

[in] Notification

서버에서 RPC에서 요청한 알림 유형을 지정하는 RPC_NOTIFICATIONS 열거형의 값입니다. 알림을 개별적으로 구독 취소해야 하며 여러 값이 지원되지 않습니다.

Windows Vista: 현재 RpcNotificationClientDisconnectRpcNotificationCallCancel 만 지원됩니다. 이 매개 변수에 대해 다른 값을 지정하면 RPC_S_CANNOT_SUPPORT 오류 코드가 반환됩니다.

[out] NotificationsQueued

지정된 RPC 호출에 대해 RPC 런타임이 대기 중인 알림 수를 수신하는 값에 대한 필수 포인터입니다. 포인터를 제공해야 합니다. 선택 사항이 아닙니다.

코드는 수신하는 알림 수를 추적해야 합니다. RPC 알림에서 구독을 취소하는 경우 RPC 런타임이 대기 중인 알림 수가 수신한 알림 수와 일치하는지 검사 합니다. 숫자가 일치하지 않으면 일부 알림이 다른 스레드에서 계속 수신될 수 있습니다. 들어오는 모든 알림을 받을 때까지 알림 상태 정리를 연기해야 합니다.

반환 값

이 함수는 성공에 대한 RPC_S_OK 반환합니다. 그렇지 않으면 RPC_S_* 오류 코드가 반환됩니다.

참고 유효한 오류 코드 목록은 RPC 반환 값을 참조하세요.
 

설명

연결된 RPC 호출에 대해 RpcServerSubscribeForNotification 이 호출된 모든 RPC 바인딩 핸들에 대해 RpcServerUnsubscribeForNotification 을 호출해야 합니다. 이 API는 연결된 RPC 호출이 완료되기 전에 호출해야 합니다. 그렇지 않으면 결과가 정의되지 않고 애플리케이션 불안정이 발생할 수 있습니다.

이 API가 반환된 후 복구되지 않은 알림이 검색될 수 있습니다.

요구 사항

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

추가 정보

RpcServerSubscribeForNotification