응답 받기Receiving a Response

대기 중인 구성 요소는 비동기적으로 작동 하도록 설계 되었으므로 대기 중인 요청에서 응답을 기다리는 동안 클라이언트 응용 프로그램을 차단 하면 안 됩니다.Because queued components are designed to work asynchronously, client applications should not block while waiting for a response from a queued request. 그럼에도 불구 하 고 클라이언트 응용 프로그램 또는 클라이언트 컴퓨터의 관련 응용 프로그램이 결국 응답을 수신 하는 데 유용한 경우가 많습니다.Nevertheless, it is often useful for the client application or a related application on the client machine to receive a response eventually. 예를 들어 요청 된 트랜잭션이 성공적으로 완료 되 면 클라이언트에 게 알릴 수 있습니다.For example, a client may want to be notified when a requested transaction has been completed successfully.

큐에 대기 중인 구성 요소가 호출자에 게 비동기적으로 응답을 보낼 수 있는 다양 한 방법이 있습니다.There are a variety of ways for a queued component to send a response back to its caller asynchronously. 예를 들어 전자 메일을 보낼 수 있습니다.For example, it could send an email. 또는 서버에서 클라이언트가 구독할 수 있는 느슨하게 결합 된 이벤트를 게시할 수 있습니다.Alternatively, the server could publish loosely coupled events to which the client could subscribe.

클라이언트가 서버에서 실행 되는 대기 중인 구성 요소에서 응답을 가져오는 또 다른 방법은 클라이언트에서 호출 된 메서드를 알림 개체에 전달 하는 것입니다.Another way for a client to obtain a response from a queued component that runs on a server is for the client to pass the called method a notification object. 알림 개체는 클라이언트에서 실행 되는 대기 중인 구성 요소의 인스턴스입니다.A notification object is an instance of a queued component that runs on the client. 이러한 알림 개체는 오류 값을 나타내는 데 사용 되는 정수만 포함 하 여 매우 간단할 수도 있고, 클라이언트에서 트랜잭션을 롤백하는 데 필요한 모든 정보를 포함 하는 매우 복잡할 수도 있습니다.Such a notification object might be quite simple, containing only an integer that is used to represent an error value, or it might be quite complex, containing all the information necessary to roll back a transaction on the client. 두 경우 모두 호출 클라이언트는 서버에서 실행 되는 대기 중인 구성 요소의 응답을 요청할 때마다 알림 개체를 입력 매개 변수로 전달 합니다.In either case, the calling client passes a notification object as an input parameter whenever it desires a response from a queued component that runs on a server. 알림 개체는 큐에 대기 되므로 서버는 해당 메서드에 대해를 호출 하 여 해당 상태를 변경할 수 있습니다 .이를 이후에 클라이언트에서 읽을 수 있습니다.Because the notification object is queued, the server can call on its methods to alter its state, which can subsequently be read out by the client. 이 시나리오에서는 클라이언트와 서버 모두에서 COM + 대기 중인 구성 요소 서비스를 사용 하 여 비동기 통신을 양방향으로 허용 합니다.In this scenario, the COM+ queued components service is used on both the client and the server to allow asynchronous communication in both directions.