JMS会话线程含义

时间:2015-05-12 19:38:07

标签: java multithreading jms

这是什么意思:

  

Session对象是用于生成和使用消息的单线程上下文

为什么Session会延伸Runnable? 这是否意味着当我们创建一个新的会话对象时,总是会启动一个新的应用程序级线程?

我需要帮助才能理解这一点。

1 个答案:

答案 0 :(得分:1)

  

这是否意味着当我们创建一个新的会话对象时,总是会启动一个新的应用程序级别线程?

不,这意味着当开始一个新线程时,你应该为它获得一个新的Session。它在same place you were looking

中表示正确
  

如果客户端希望有一个线程产生消息而其他线程消耗它们,则客户端应该为其生成线程使用单独的会话。

     

一旦启动连接,任何具有一个或多个已注册消息侦听器的会话将专用于向其传递消息的控制线程。客户端代码使用此会话或来自另一个控制线程的任何组成对象是错误的。此规则的唯一例外是使用会话或连接关闭方法。