セッションとは、メッセージ送受信のための単一スレッドのコンテキストです。
アプリケーションはセッションを使用して、メッセージ、メッセージ・プロデューサー、メッセージ・コンシューマー、キュー・ブラウザー、および一時宛先を作成できます。また、アプリケーションはセッションを使用してローカル・トランザクションを実行することもできます。
アプリケーションは複数のセッションを作成できます。この場合、各セッションは、他のセッションとは関係なくメッセージを作成およびコンシュームします。個別のセッションまたは同一セッションに含まれる 2 つのメッセージ・コンシューマーが同一トピックをサブスクライブする場合、これらのメッセージ・コンシューマーはそれぞれ、そのトピックについて公開されたメッセージのコピーを受信します。
Connection オブジェクトとは異なり、Session オブジェクトを複数のスレッドで並行して使用することはできません。Session オブジェクトの Close Session メソッドだけを、Session オブジェクトがその時点で使用しているスレッド以外のスレッドから呼び出すことができます。Close Session メソッドはセッションを終了し、そのセッションに割り振られていたシステム・リソースを解放します。
アプリケーションで複数のスレッドのメッセージを並列処理する必要がある場合は、アプリケーションは最初に追加スレッドを作成してから、各スレッドで異なるセッションを使用しなければなりません。