public class MyEvent { private String data; } public class MyEventHandler implements EventHandler<MyEvent> { @Override public void onEvent(MyEvent event, long sequence, boolean endOfBatch) throws Exception { System.out.println("Processing event: " + event.getData()); } } public class MyEventFactory implements EventFactory<MyEvent> { @Override public MyEvent newInstance() { return new MyEvent(); } } RingBuffer<MyEvent> ringBuffer = RingBuffer.createSingleProducer(new MyEventFactory(), bufferSize); SequenceBarrier sequenceBarrier = ringBuffer.newBarrier(); MyEventHandler eventHandler = new MyEventHandler(); WorkerPool<MyEvent> workerPool = new WorkerPool<>(ringBuffer, sequenceBarrier, new IgnoreExceptionHandler(), eventHandlers); ringBuffer.addGatingSequences(workerPool.getWorkerSequences()); workerPool.start(Executors.newFixedThreadPool(threadCount));


上一篇:
下一篇:
切换中文