tomcat中的ThreadPoolExecutorFactoryBean

时间:2015-11-03 00:52:45

标签: java spring executorservice threadpoolexecutor

我试图在tomcat中使用ThreadPoolExecutorFactoryBean,这个bean是否会干扰tomcat线程?

<bean id="executorService" class="org.springframework.scheduling.concurrent.ThreadPoolExecutorFactoryBean">
    <property name="corePoolSize" value="40" />
    <property name="maxPoolSize" value="40" />
    <property name="allowCoreThreadTimeOut" value="true" />
    <property name="keepAliveSeconds" value="5" />
</bean>

1 个答案:

答案 0 :(得分:0)

ThreadPoolExecutorFactoryBean个州的javadoc

  

允许配置的JavaBean   bean样式中的java.util.concurrent.ThreadPoolExecutor [...]

换句话说,一旦Spring处理bean定义,它将使用您提供的属性创建ThreadPoolExecutor。该对象将创建一个独立的线程池。这些线程与应用程序中的任何其他线程无关。

它们将干扰其他线程,因为线程调度程序将有更多线程与之共享时间片。而已。

  

我们已经开始在jdbc的生产中看到一个奇怪的问题   此更改后,连接池的连接已用尽   我不确定这是否会导致它...想要确定这一点   某种程度上不会导致它...

除非您以某种方式共享这些线程与其他线程之间的连接,否则我无法想象线程池会导致您描述的行为。