Closed. This question is opinion-based。它当前不接受答案。












想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。

6年前关闭。



Improve this question




使用的优缺点是什么

即使Spring是Java并发的包装器,Spring ThreadPoolTaskExecutor与Java Executorservice cachedthreadpool也是如此。

只是想知道使用它们的灵活性。

最佳答案

使用spring的 ThreadPoolTask​​Executor 的附加优势之一是它非常适合管理和监视(例如,通过JMX 通过JMX ),并提供了几个有用的属性:“corePoolSize”,“maxPoolSize”,“keepAliveSeconds”(均支持)在运行时更新); “poolSize”,“activeCount”。

除此之外,如果您已经在应用程序中实现了 Spring 注入(inject),显然使用起来很简单。通过使用它,您可以通过setter注入(inject)直接注入(inject)线程池,如下所示:

<bean id="taskExecutor"
    class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
    <property name="corePoolSize" value="5" />
    <property name="maxPoolSize" value="10" />
    <property name="WaitForTasksToCompleteOnShutdown" value="true" />
</bean>

ThreadPoolTaskExecutor Doc

另一方面, ExecutorService CachedThreadPool 是一个很好的实用程序,可以共享您最近使用不足的线程(在60秒内)。重要的是要指出CachedThreadPool不是独立的类
其方法(newCachedThreadPool())。

CachedThreadPool Doc

关于java - Spring ThreadPoolTask​​Executor与Java Executorservice cachedthreadpool ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24903658/

10-09 09:36