Wildfly 10.1.0.Final ManagedExecutorService导致活动线程数增加
我在Wildfly 15上尝试过相同的配置
我每10分钟执行一次Timer类。我在此计时器中调用了无状态会话bean的方法。
@Resource
private TimerService timerService;
@Timeout
public void timeOut() {
executorBean.executeParallels();
}
在ExecutorBean中,我使用ManagedExecutorService并调用10000次以执行doSomething。
@Stateless (name="ExecutorBean")
ExecutorBean implements ExecutorLocal {
@Resource
private ManagedExecutorService executorService;
public void executeParallels() {
for (int i = 0; i < 10000; i++) {
Future<Void> result = executorService.submit(new Callable<String>() {
@Override
public String call() throws Exception {
doSomething();
return "executed";
}
});
}
}
}
这是我的standalone.conf文件:
<managed-executor-services>
<managed-executor-service name="default"
jndi-name="java:jboss/ee/concurrency/executor/default"
context-service="default" hung-task-threshold="60000"
core-threads="50" max-threads="50" keepalive-time="5000"/>
</managed-executor-services>
我可以部署并运行代码,但是当我检查Wildfly管理控制台(独立服务器-> JVM)时,可以看到实时线程的数量不断增加。
随着时间的推移,线程号应该相同。