System.Messaging 名前空間
MessageQueue クラスのメンバには、キューのメッセージの読み取りおよび書き込みのための次のメソッドがあります。
-
Send メソッドを使用すると、アプリケーションを使用してキューにメッセージを書き込むことができます。メソッドをオーバーロードすると、メッセージを送信するときに (送信する情報を詳細に制御する) Message を使用するか、またはアプリケーション固有のクラスなど他のマネージ オブジェクトを使用するかを指定できます。このメソッドは、トランザクションの一部としてのメッセージの送信もサポートします。
-
Receive、ReceiveById、ReceiveByCorrelationId の各メソッドは、キューからメッセージを読み取るための機能を提供します。Send メソッド同様、これらのメソッドはトランザクション キューの処理をサポートするオーバーロードを提供します。これらのメソッドは、キューが空の場合に処理を継続できるようにするタイムアウト パラメータを持つオーバーロードも提供します。
これらのメソッドは同期処理の例であるため、タイムアウトを指定しない限り、メッセージを受け取るまで現在のスレッドを中断します。
-
Peek メソッドは Receive と類似していますが、メッセージを読み取ったときにキューからメッセージを削除しません。Peek はキューの内容を変更しないため、トランザクション処理をサポートするオーバーロードはありません。ただし、Peek は Receive と同様にキューから同期的にメッセージを読み取るため、メソッドのオーバーロードはタイムアウトの指定をサポートしてスレッドが無限に待機することを防止します。
-
BeginPeek、EndPeek、BeginReceive、EndReceive の各メソッドは、キューから非同期的にメッセージを読み取るメソッドを提供します。これらのメソッドは、メッセージがキューに到達するのを待機している間に現在のスレッドを中断することはありません。
MessageQueue クラスの以下のメソッドは、指定した基準によりキューのリストを取得し、特定のキューが存在するかどうかを確認する機能を提供します。
-
GetPublicQueuesByCategory、GetPublicQueuesByLabel、および GetPublicQueuesByMachine は、共通の基準によりパブリック キューを取得する方法を提供します。GetPublicQueues のオーバーロードは、複数の検索基準に基づくキューの選択の詳細を提供します。
MessageQueue クラスの他のメソッドは、次の機能を提供します。
Message クラスは、ユーザーがキューに送信した情報の詳細な制御を提供し、キューからメッセージを受信またはピークを行うときに使用されるオブジェクトです。Message クラスのプロパティには、メッセージ本文の他、受信確認設定、フォーマッタ選択、識別、認証情報および暗号化情報、タイムスタンプ、トレース、サーバー履歴、配信不能キューの使用に関する指示、およびトランザクション データがあります。
MessageQueue コンポーネントは、キューから送受信したメッセージをシリアル化および逆シリアル化できる、次の 3 つのフォーマッタに関連付けられています。
-
XmlMessageFormatter は疎結合メッセージを提供し、シリアル化された型をクライアントとサーバーで独立してバージョン管理できます。
-
ActiveXMessageFormatter は MSMQ COM コントロールと互換性があります。このフォーマッタによりコントロールが受信できる型を送信し、コントロールが送信した型を受信できます。
-
BinaryMessageFormatter は XmlMessageFormatter の代替となるより高速なフォーマッタですが、疎結合メッセージングの機能はありません。
Messaging 名前空間の他のクラスはコード アクセス セキュリティおよび ACL ベースのセキュリティをサポートしており、キューからメッセージを読み取るときに Message プロパティをフィルタ処理し、メッセージの送受信時にトランザクションを使用します。



デリゲート | 説明 | |
---|---|---|
![]() | PeekCompletedEventHandler | MessageQueue の PeekCompleted イベントを処理するメソッドを表します。 |
![]() | ReceiveCompletedEventHandler | MessageQueue の ReceiveCompleted イベントを処理するメソッドを表します。 |

System.Messaging
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/05/08 19:35 UTC 版)
「基本クラスライブラリ」の記事における「System.Messaging」の解説
「モニター、およびネットワークの管理者メッセージキューへの接続、送受信、メッセージの検索など」 .NET Remoting は提供される機能のもう一つの名称である。この名前空間はWindows Communication Foundationにより取って代わる予定である。
※この「System.Messaging」の解説は、「基本クラスライブラリ」の解説の一部です。
「System.Messaging」を含む「基本クラスライブラリ」の記事については、「基本クラスライブラリ」の概要を参照ください。
- System.Messagingのページへのリンク