Java tomcat中的ThreadPoolExecutoryFactoryBean

Java tomcat中的ThreadPoolExecutoryFactoryBean,java,spring,executorservice,threadpoolexecutor,Java,Spring,Executorservice,Threadpoolexecutor,我试图在tomcat中使用ThreadPoolExecutoryFactoryBean,这个bean会干扰tomcat线程吗 <bean id="executorService" class="org.springframework.scheduling.concurrent.ThreadPoolExecutorFactoryBean"> <property name="corePoolSize" value="40" /> <property na

我试图在tomcat中使用ThreadPoolExecutoryFactoryBean,这个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>
ThreadPoolExecutoryFactoryBean的javadoc状态

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

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

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


我们已经开始看到jdbc在生产中出现了一个奇怪的问题 此更改后,连接池中的连接正在用尽..i 我不太确定这是否是导致它的原因..想确认一下吗 不知怎么的,这不是原因


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

@Sotirios Delimanolis-关于限制catalina线程或jndi连接池线程的数量。。etcI仍然不明白你关心的是什么。该bean最终将创建40个与任何其他线程完全无关的线程。我们已经开始在生产中看到一个奇怪的问题,即jdbc连接池在该更改后正在耗尽连接。不过,我不完全确定这是否是导致它的原因。我想确定这不是导致它的原因…请注意,连接也与线程完全无关。它们本身就是对象。它们不会消失。如果这个bean中有更多的线程,那么进程中可能会有更多的线程上下文切换。就这些。好的,谢谢你的澄清。如果你能回答这个问题,我会把它划掉