1
我是一個破壞者的新手,我正在使用干擾程序在線程之間傳遞線程結構。我可以使用hadleEventsWith或使用after()來運行一組處理程序。Disruptor:設置EventHandler的順序
disruptor.handleEventsWith(eventhandler1)
.then(eventhandler2)
.then(eventhandler3);
但是,我希望能夠以新的事件處理器添加到該管道在不改變代碼here.To做到這一點,我加入了一個整數值,給每個事件handler.Then,我以這些價值觀念,相關的處理程序創建一個有序的處理程序列表。然後,給我打擾目前我正在做的是
disruptor.handleEventsWith(handlerOrderList.get(0));
for (int i=1; i<handlerOrderList.size();i++) {
disruptor.after(handlerOrderList.get(i1)).then(handlerOrderList.get(i));
}
有沒有更好的方式做到這一點?
但是對此,事件處理程序無法按正確的順序工作 – Gimhani
您是對的。我添加了一個更新的答案。 –