IServerChannelSink.ProcessMessage 메서드

정의

현재 싱크에서 메시지 처리를 요청합니다.

public:
 System::Runtime::Remoting::Channels::ServerProcessing ProcessMessage(System::Runtime::Remoting::Channels::IServerChannelSinkStack ^ sinkStack, System::Runtime::Remoting::Messaging::IMessage ^ requestMsg, System::Runtime::Remoting::Channels::ITransportHeaders ^ requestHeaders, System::IO::Stream ^ requestStream, [Runtime::InteropServices::Out] System::Runtime::Remoting::Messaging::IMessage ^ % responseMsg, [Runtime::InteropServices::Out] System::Runtime::Remoting::Channels::ITransportHeaders ^ % responseHeaders, [Runtime::InteropServices::Out] System::IO::Stream ^ % responseStream);
public System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage(System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage requestMsg, System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders, System.IO.Stream requestStream, out System.Runtime.Remoting.Messaging.IMessage responseMsg, out System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders, out System.IO.Stream responseStream);
[System.Security.SecurityCritical]
public System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage(System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage requestMsg, System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders, System.IO.Stream requestStream, out System.Runtime.Remoting.Messaging.IMessage responseMsg, out System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders, out System.IO.Stream responseStream);
abstract member ProcessMessage : System.Runtime.Remoting.Channels.IServerChannelSinkStack * System.Runtime.Remoting.Messaging.IMessage * System.Runtime.Remoting.Channels.ITransportHeaders * System.IO.Stream * IMessage * ITransportHeaders * Stream -> System.Runtime.Remoting.Channels.ServerProcessing
[<System.Security.SecurityCritical>]
abstract member ProcessMessage : System.Runtime.Remoting.Channels.IServerChannelSinkStack * System.Runtime.Remoting.Messaging.IMessage * System.Runtime.Remoting.Channels.ITransportHeaders * System.IO.Stream * IMessage * ITransportHeaders * Stream -> System.Runtime.Remoting.Channels.ServerProcessing
Public Function ProcessMessage (sinkStack As IServerChannelSinkStack, requestMsg As IMessage, requestHeaders As ITransportHeaders, requestStream As Stream, ByRef responseMsg As IMessage, ByRef responseHeaders As ITransportHeaders, ByRef responseStream As Stream) As ServerProcessing

매개 변수

sinkStack
IServerChannelSinkStack

현재 싱크를 호출한 채널 싱크 스택입니다.

requestMsg
IMessage

요청을 포함하는 메시지입니다.

requestHeaders
ITransportHeaders

클라이언트에서 들어오는 메시지에서 검색된 헤더입니다.

requestStream
Stream

처리하고 역직렬화 싱크에 전달해야 하는 스트림입니다.

responseMsg
IMessage

이 메서드가 반환되면 응답 메시지를 포함하는 메서드가 포함 IMessage 됩니다. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.

responseHeaders
ITransportHeaders

이 메서드가 반환될 때 클라이언트에 ITransportHeaders 메시지 제목을 반환하기 위해 추가할 헤더를 포함하는 헤더를 포함합니다. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.

responseStream
Stream

이 메서드가 반환되면 전송 싱크로 Stream 다시 향하는 메서드가 포함됩니다. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.

반품

ServerProcessing 메시지를 처리하는 방법에 대한 정보를 제공하는 상태 값입니다.

특성

예외

즉시 호출자에게 인프라 권한이 없습니다.

설명

프록시의 작업은 호출된 메서드 호출을 메시지 개체로 변환하는 것입니다. 인터페이스를 IMessage 구현하는 이 메시지 개체는 메시지 싱크 개체를 호출하여 ProcessMessage 클라이언트 끝에서 서버 끝으로 전달됩니다. 메시지 싱크는 모든 메시지 싱크가 작업을 수행한 후 다음 메시지 싱크를 호출 ProcessMessage 할 책임이 있다는 점에서 함께 연결됩니다. 예를 들어 동기화 관련 메시지 싱크는 잠금을 획득하거나 해제한 다음 다운스트림 메시지 싱크에 추가로 위임할 수 있습니다.

적용 대상