0

我有一个生成数百万个事件并将这些事件发送到服务器并接收每个事件的期货的应用程序。为了防止应用程序内存不足,我将这些 Futures 放在 a 中ArrayBlockingQueue,并且该队列由另一个线程处理。我的应用程序发送这些事件的速度比它处理这些期货的速度要快,因此应用程序速度变慢了很多。

处理这些期货的最佳方法是什么?

4

1 回答 1

0

在不知道您在应用程序中的需求的情况下,很难提出性能提示。

如果您通过一个固定线程池使用多个线程并仔细选择最大线程数(无限线程执行器也会减慢您的应用程序),也许您可​​以加快消耗速度。

重新考虑应用程序结构的另一种方法。例如,在使用期货期间,是否有任何可以重构以供以后执行的过程。

一些代码示例将有助于提供更具体的建议。

于 2017-08-23T18:42:42.947 回答