我有一堆线程,每个线程创建一个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()
在两个单独的线程上返回相同的会话对象?