qpid AMQConnection.createSession()是否生成重复的会话对象?

qpid AMQConnection.createSession()是否生成重复的会话对象?,session,jms,hashcode,qpid,Session,Jms,Hashcode,Qpid,我有一组线程,每个线程创建一个org.apache.qpid.client.AMQConnection,然后创建一个会话 public void run() { Connection connection = new AMQConnection("amqp://*******:*****@clientid/test?brokerlist='tcp://********:****?sasl_mechs='ANONYMOUS''"); connection.start();

我有一组线程,每个线程创建一个
org.apache.qpid.client.AMQConnection
,然后创建一个会话

public void run() {
    Connection connection = new AMQConnection("amqp://*******:*****@clientid/test?brokerlist='tcp://********:****?sasl_mechs='ANONYMOUS''");
    connection.start();

    Session ssn = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);    
    System.out.println(ssn.toString());

    ssn.close();
    connection.close();
}
在某些运行中,我在两个不同的线程中获得相同的Session.hashCode(),如下所示:

org.apache.qpid.client.AMQSession_0_10@420e44
org.apache.qpid.client.AMQSession_0_10@d76237
org.apache.qpid.client.AMQSession_0_10@d76237
org.apache.qpid.client.AMQSession_0_10@7148e9

现在我明白了
hashcode()
不能保证是唯一的,我如何证明或反驳
createSession()
在两个单独的线程上返回相同的会话对象?

更多的是Java对象等价性问题,而不是qpid或消息传递

我没有打印hashcode,而是将
会话
对象本身插入
向量
,并对它们进行比较(
=
)。事实证明,它们在所有线程中都是唯一的