WebSphere Message Service Clients for C/C++ and .NET, Version 1.2 オペレーティング・システム: Linux, Windows

非同期メッセージ配信

C アプリケーションがメッセージ・リスナー関数とコンテキスト・データをメッセージ・コンシューマーに登録するか、C++ アプリケーションがメッセージ・リスナーをメッセージ・コンシューマーに登録すると、アプリケーションは非同期状態でメッセージを受信できます。

メッセージがメッセージ・コンシューマーに到着すると、XMS はメッセージ・リスナー関数を呼び出し、コンテキスト・データを指すポインターを一方のパラメーターとして渡し、メッセージのハンドルをもう一方のパラメーターとして渡すことによって、C アプリケーションにメッセージを配信します。 XMS は、メッセージ・リスナーの onMessage() メソッドを呼び出して、メッセージを指すポインターをパラメーターとして渡すことにより、C++ アプリケーションにメッセージを配信します。

XMS は、1 つのスレッドを使用して、あるセッションのすべての非同期メッセージ配信を処理します。 このことは、一度に実行できるのは 1 つのメッセージ・リスナー関数または 1 つの onMessage() メソッドのみであるという意味です。 あるセッションで複数のメッセージ・コンシューマーが複数のメッセージを非同期で受信しており、メッセージ・リスナー関数または onMessage() メソッドは、現在 1 つのメッセージを 1 つのメッセージ・コンシューマーに配信している場合、同じメッセージを待っているその他のメッセージ・コンシューマーは、引き続き待機する必要があります。セッションへの配信を待機中のその他のメッセージも、引き続き待機する必要があります。

アプリケーションは、メッセージを並行して配信する必要がある場合、複数のセッションを作成する必要があるため、XMS は、複数のスレッドを使用して非同期メッセージ配信を処理します。 このような方法により、複数のメッセージ・リスナー関数または onMessage() メソッドを並行して実行できます。

C アプリケーションでメッセージ・リスナー関数を使用することの詳細については、C でのメッセージ・リスナー関数の使用法を参照してください。 C++ を使用している場合は、C++ でのメッセージ・リスナーの使用法を参照してください。

関連概念
処理済みセッション
セッションでのメッセージの受信の確認
同期メッセージ配信
メッセージ送達モード

Concept topic

ご利用条件 | フィードバック (英語のみ)

Timestamp icon最終更新: 8 Jun 2006
(C) Copyright IBM Corporation 2005, 2006. All Rights Reserved.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)