IpcChannel.CreateMessageSink(String, Object, String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un receptor de mensajes de canal que envía mensajes a la dirección URL o al objeto de datos del canal especificados.
public:
virtual System::Runtime::Remoting::Messaging::IMessageSink ^ CreateMessageSink(System::String ^ url, System::Object ^ remoteChannelData, [Runtime::InteropServices::Out] System::String ^ % objectURI);
public System.Runtime.Remoting.Messaging.IMessageSink CreateMessageSink (string url, object remoteChannelData, out string objectURI);
abstract member CreateMessageSink : string * obj * string -> System.Runtime.Remoting.Messaging.IMessageSink
override this.CreateMessageSink : string * obj * string -> System.Runtime.Remoting.Messaging.IMessageSink
Public Function CreateMessageSink (url As String, remoteChannelData As Object, ByRef objectURI As String) As IMessageSink
Parámetros
- url
- String
Dirección URL a la que el nuevo receptor debe enviar mensajes. Puede ser null
.
- remoteChannelData
- Object
Objeto de datos del canal del host remoto al que el nuevo receptor debe enviar mensajes. Puede ser null
.
- objectURI
- String
Cuando este método finaliza, contiene una dirección URI del nuevo receptor de mensajes del canal que envía mensajes a la dirección URL o al objeto de datos del canal especificados. Este parámetro se pasa sin inicializar.
Devoluciones
Receptor de mensajes del canal que envía mensajes a la dirección URL o al objeto de datos de canal especificados.
Implementaciones
Ejemplos
En el ejemplo de código siguiente, se muestra cómo se utiliza el método CreateMessageSink. Este ejemplo de código es parte de un ejemplo mayor proporcionado para la clase IpcChannel.
// Create a message sink.
String^ objectUri;
System::Runtime::Remoting::Messaging::IMessageSink^ messageSink = channel->CreateMessageSink(
L"ipc://localhost:9090/RemoteObject.rem", nullptr, objectUri );
Console::WriteLine( L"The URI of the message sink is {0}.", objectUri );
if ( messageSink != nullptr )
{
Console::WriteLine( L"The type of the message sink is {0}.", messageSink->GetType() );
}
// Create a message sink.
string objectUri;
System.Runtime.Remoting.Messaging.IMessageSink messageSink =
channel.CreateMessageSink(
"ipc://localhost:9090/RemoteObject.rem", null,
out objectUri);
Console.WriteLine("The URI of the message sink is {0}.",
objectUri);
if (messageSink != null)
{
Console.WriteLine("The type of the message sink is {0}.",
messageSink.GetType().ToString());
}
Comentarios
El CreateMessageSink método devuelve un receptor de mensajes de canal que entrega mensajes a la dirección URL especificada o al objeto de datos del canal. Si el uri
parámetro es null
, remoteChannelData
se usa como destino para el receptor. url
Los parámetros o remoteChannelData
pueden ser null
, pero no ambos.
Los receptores de canal proporcionan un punto de complemento que permite el acceso a los mensajes subyacentes que fluyen a través del canal, así como la secuencia utilizada por el mecanismo de transporte para enviar mensajes a un objeto remoto. Los receptores de canal se vinculan juntos en una cadena de ChannelSinkProviders
y todos los mensajes de canal fluyen a través de esta cadena de receptores antes de que el mensaje se serialice y transporte por fin.