java - JMS QueueSender 线程安全吗?

标签 java queue jms thread-safety

我想在多线程环境中使用 QueueSender。

QueueSender.send() 线程安全吗?

最佳答案

不,MessageProducer/QueueSender 不是线程安全的。

或者更具体地说:Session不是线程安全的。 Session 的 JavaDoc 在第一句话中明确提到了这一点:

A Session object is a single-threaded context for producing and consuming messages.

并且由于 MessageProducer/QueueSender 绑定(bind)到 Session,您不能同时从多个线程使用它。事实上,您也不能在不同时间从两个不同的线程使用它!

关于java - JMS QueueSender 线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2266461/

相关文章:

Java 代理、检测和数组创建

java - SWT 空指针异常

iPhone:启动时加载队列

java - 如何使用jms/activemq发送视频剪辑和图像附件?

jboss - 如何获取 Topic 中 JMS 消息的数量

java - 为什么这段Java代码没有并发运行

Java自动识别线程死锁并停止执行?

python - 使用多处理写入文件

asynchronous - 数据库事务和集成事件调度 - 如何使其原子化?

jboss - JMS/Seam——创建 session 时出现异常?