It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center
                            
                        
                    
                
                6年前关闭。
            
        

寻找与ExecutorServiceThreadPoolExecutor类似的ForkJoinPool,但是将任务添加到工作队列并使其出队以进行执行的延迟最小。

迫切希望它具有CPU缓存意识并具有可调整的退避策略和线程工厂。

或者至少是烹制它的最佳实例。

最佳答案

将任务添加到工作队列并使其出队以便执行的延迟最小。


这些库都具有相同的延迟,这在很大程度上取决于您拥有的硬件和拥有的操作系​​统(因为它进行线程调度)

没有影响延迟的特定选项。

其他选项包括使用;


不使用其他线程,这具有最小的延迟,并且具有内置的回退策略;)
忙于等待消费者线程。
如果消费者跟不上生产者的速度,就会减慢生产者的生产速度。


您可能会感兴趣的几个库是Disruptor库,它是一个超低延迟的环形缓冲区,支持忙碌的等待,还有一个我的Java Chronicle库,几乎可以免费为您的使用者持久保存所有消息/任务可以比生产者落后任何数量,几乎没有影响(例如,落后许多GB)


  支持CPU缓存


这两个库都通过最小化产生的垃圾量来提高缓存利用率。 ExecutorService会产生一些垃圾,但到目前为止,最大的延迟是唤醒了使用者线程。

关于java - 寻找具有线程池和最小调度延迟的ExecutorService ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16245199/

10-11 22:32
查看更多