配置Wildfly ManagedExecutorService行为

时间:2015-07-01 14:05:12

标签: java java-ee concurrency wildfly

Wildfly ManagedExecutorService的行为非常不直观,我怀疑行为是一个bug(Wildfly 9,它的价值):它生成core-size个线程,然后用它来处理queue-size' d队列。即使设置了max-size,也无法生成其他线程,无论队列中有多少工作。

也就是说,直到队列完全填满,此时产生最多max-size个线程,但因为那时队列已经满了,新产生的线程通常无法解决在作业因最大化队列而丢失之前。

正常的执行程序服务倾向于生成max(max-size, available work)个线程,在其他工作中,如果有额外的工作可用,如果达不到max-size,它们会产生额外的线程。

但是我无法配置managed-executor-service子系统来提供这样的行为(同时仍然有一个作业队列)。唯一的选择似乎是将core-size设置为max-size,这很愚蠢。任何提示?

0 个答案:

没有答案