2015-10-31 69 views
6

據中提到的Spring documentation說:春ThreadPoolTask​​Scheduler VS ThreadPoolTask​​Executor類

ThreadPoolTaskScheduler實際上實現了Spring的TaskExecutor接口一樣,所以單個實例可以儘快用於異步執行,以及計劃,並可能重複執行。

那麼我們想要使用ThreadPoolTaskExecutor實例的場景是ThreadPoolTaskScheduler實例?

我目前使用Spring XML。我創建的ThreadPoolTaskScheduler豆如下:

<task:scheduler id="myScheduler" pool-size="1"/> 

,同時可以創建ThreadPoolTaskExecutor實例的bean作爲

<task:executor id="executor" pool-size="10"/> 

回答

7

你Spring文檔中引用這句話只說,你可以使用調度來執行任務,但它不是它的主要目的。 A ThreadPoolTaskExecutor通過其corePoolSize,maxPoolSize,keepAliveSecondsqueueCapacity屬性在線程池上提供細粒度配置。調度程序(如ThreadPoolTaskScheduler)不提供此類配置。

因此,兩者之間的選擇歸結爲以下問題:是否需要執行或計劃執行任務?

+0

謝謝,它真的幫助我瞭解Executor和Scheduler之間的區別。 –

相關問題