【发布时间】:2021-03-16 14:59:54
【问题描述】:
我正在使用 LMAX 干扰器,它工作得非常好。
我想在破坏者的线程生命周期开始时执行一些核心关联代码(需要在破坏者处理程序的线程上运行)。
我尝试覆盖中断器中的启动方法,但这段代码仍然在执行线程而不是中断器线程上运行,如下所示:
ThreadFactory factory = new ThreadFactoryBuilder().setNameFormat("DisruptorThread").build();
Disruptor<OrderBasedEventHolder> disruptor = new Disruptor<>(new Disruptor<Holder> disruptor = new Disruptor<Holder>(new HolderFactory(), (int) Math.pow(2, bufferExp), factory, pType, waitStrategy) {
@Override public RingBuffer<OrderBasedEventHolder> start() {
// Initialization code
return super.start();
}
};
disruptor.start();
如何覆盖ThreadFactory创建的线程的run()方法?
谢谢!!!
【问题讨论】:
标签: java multithreading affinity disruptor-pattern