我计划拥有一个代理主题,并拥有多个默认消息侦听器或简单的消息侦听器。所有侦听器都执行相同的代码。
我有点像多线程执行一样工作。 我使用JMS和activemq作为代理。
要理解的一些代码: 每个监听器都会调用此方法“事件处理”发送事件。此方法将依次调用其他方法。 handle方法将依次调用其他方法。
private void eventProcessing(final Event Event){
try {
if(Event.isDatafileTransaction()){
final EventDatafileTransaction datafileTransaction = Event.getDatafileTransaction();
final List<Events> transactions = getDatafileTransactions(datafileTransaction);
final List<AcEventRecordOperation> recordOperations = getTransactionsAsListOfRecordOperations(datafileTransaction, transactions);
if (recordOperations != null && recordOperations.size() > 0) {
recordOperationListener.handle(recordOperations);
}
}
} catch (Throwable t) {
}
}
答案 0 :(得分:0)
您的侦听器必须是线程安全的 - 没有字段(类级变量)或者必须使用同步保护它们。