Aracılığıyla paylaş


IpcChannel.CreateMessageSink(String, Object, String) Yöntem

Tanım

İletileri belirtilen URL'ye veya kanal veri nesnesine teslim eden bir kanal ileti havuzu döndürür.

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

Parametreler

url
String

Yeni havuzun iletileri teslim etmesi gereken URL. olabilir null.

remoteChannelData
Object

Yeni havuzun iletileri teslim etmesi gereken uzak konağın kanal veri nesnesi. olabilir null.

objectURI
String

Bu yöntem döndürdüğünde, iletileri belirtilen URL'ye veya kanal veri nesnesine teslim eden yeni kanal ileti havuzu URI'sini içerir. Bu parametre, başlatmadan iletilir.

Döndürülenler

İletileri belirtilen URL'ye veya kanal veri nesnesine teslim eden bir kanal ileti havuzu.

Uygulamalar

Örnekler

Aşağıdaki kod örneğinde yönteminin nasıl kullanılacağı gösterilmektedir CreateMessageSink . Bu kod örneği, sınıfı için IpcChannel sağlanan daha büyük bir örneğin parçasıdır.

// 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());
}

Açıklamalar

yöntemi, CreateMessageSink iletileri belirtilen URL'ye veya kanal veri nesnesine teslim eden bir kanal ileti havuzu döndürür. uri parametresi isenull, remoteChannelData havuz için hedef olarak kullanılır. url veya remoteChannelData parametreleri olabilirnull, ancak her ikisi birden olamaz.

Kanal havuzları, kanaldan akan temel iletilere ve uzak bir nesneye ileti göndermek için aktarım mekanizması tarafından kullanılan akışa erişim sağlayan bir eklenti noktası sağlar. Kanal havuzları bir zincir ChannelSinkProviders halinde birbirine bağlanır ve ileti son olarak seri hale getirilip taşınmadan önce tüm kanal iletileri bu havuz zincirinden akar.

Şunlara uygulanır