JMS单个会话可以有多个MessageProducer
并使用每个MessageProducer
并行吗?
例如:
p1= Session.createProducer(Queue1);
p2= Session.createProducer(Queue2);
thread1() {
p1.send();
}
thread2() {
p2.send();
}
答案 0 :(得分:0)
Session,MessageProducer和MessageConsumer不是线程安全的。建议每个线程都有单独的Session。
您正尝试在各种线程中使用相同的Session对象。如果您无法避免(无法想到这样的用例),您需要自己确保线程安全(通过标准的java同步机制)。
Connection和ConnectionFactory是线程安全的。