ChannelServices クラス

リモート処理チャネルの登録、解決、および URL 探索で支援する静的メソッドを提供します。このクラスは継承できません。

この型のすべてのメンバの一覧については、ChannelServices メンバ を参照してください。

System.Object
   System.Runtime.Remoting.Channels.ChannelServices

NotInheritable Public Class ChannelServices
[C#]
public sealed class ChannelServices
[C++]
public __gc __sealed class ChannelServices
[JScript]
public class ChannelServices

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

チャネルは、アプリケーション ドメイン、プロセス、コンピュータなどのリモート処理境界を超えて、アプリケーション間でメッセージを転送します。このように境界を越える転送には、着信と発信があります。チャネルは、エンドポイントで着信メッセージを待機したり、発信メッセージをそのエンドポイントに送信したり、その両方を実行したりできます。これは、チャネルの他方の端にランタイムが存在しない場合でも、広範囲のプロトコルを組み込むための機能拡張ポイントをランタイムに提供します。ランタイム オブジェクトを使用して、広範囲なセマンティクスおよびエンティティを公開できます。チャネルは、メッセージを特定のプロトコルへ変換したり、特定のプロトコルから変換したりするための機能拡張ポイントを提供します。

チャネルは、 ChannelNameChannelPriority などの情報プロパティを提供する IChannel インターフェイスを公開する必要があります。チャネルは ChannelServices.RegisterChannel メソッドを使用して登録されます。リモート処理構成からチャネルを読み込むこともできます。詳細については、「 <channel> 要素 (テンプレート) 」を参照してください。

クライアント側では、メッセージはクライアント Context チェインを走査した後に、クライアント チャネル シンク チェインに渡されます。通常、最初のチャネル シンクは、メッセージをストリームにシリアル化する IClientFormatterSink です。このストリームは、チャネル シンク チェインからクライアント転送シンクに渡されます。その後、クライアント転送シンクは、このストリームをワイヤに書き込みます。

サーバー側では、サーバー転送シンクは、ワイヤから要求を読み取り、要求ストリームをサーバー チャネル シンク チェインに渡します。このチェインの終端にあるサーバー フォーマッタ シンクは、要求をメッセージに逆シリアル化します。その後、このメッセージをリモート処理インフラストラクチャに渡し、このインフラストラクチャがサーバー Context チェインにディスパッチします。

必要条件

名前空間: System.Runtime.Remoting.Channels

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

ChannelServices メンバ | System.Runtime.Remoting.Channels 名前空間 | アプリケーション ドメイン