{
try
{
TopicSession session = topicConnection.createTopicSession(transacted != TRANS_NONE, Session.AUTO_ACKNOWLEDGE);
Topic topic = (Topic)context.lookup(TEST_TOPIC);
TopicPublisher publisher = session.createPublisher(topic);
alignFlag.countDown();
alignFlag.await();
BytesMessage message = session.createBytesMessage();
message.writeBytes(PERFORMANCE_TEST_DATA_PAYLOAD);
long startTime = System.currentTimeMillis();
for (int i = 0; i < iterationCount; i++)
{
publisher.publish(message, persistence, 4, 0);
//publisher.publish(topic, message, persistence, 4, 0);
//getLog().debug(" Sent #"+i);
if (transacted == TRANS_INDIVIDUAL)
{
session.commit();
}
}
if (transacted == TRANS_TOTAL)
{
session.commit();
}
long endTime = System.currentTimeMillis();
session.close();
long pTime = endTime - startTime;
log.debug(" sent all messages in " + ((double)pTime / 1000) + " seconds. ");
}
catch (Exception e)
{
log.error("error", e);
}
}
};
Thread recvThread =
new Thread("recvThread transacted = " + transacted + " persistent = " + persistence)
{
/**
* Main processing method for the JBossMQPerfStressTestCase object
*/
public void run()
{
try
{
TopicSession session = topicConnection.createTopicSession(transacted != TRANS_NONE, Session.AUTO_ACKNOWLEDGE);
Topic topic = (Topic)context.lookup(TEST_TOPIC);
TopicSubscriber subscriber = session.createSubscriber(topic);
alignFlag.countDown();
alignFlag.await();