【发布时间】:2014-02-21 21:38:20
【问题描述】:
我在我的应用程序中使用ExecutorService 并使用固定线程池。我已在我的 spring xml 文件中将其声明为
<bean id="executorService"
class="java.util.concurrent.Executors"
factory-method="newFixedThreadPool"
destroy-method="shutdownNow">
<constructor-arg value="5"/>
</bean>
现在我的代码中有一种情况,我必须强制关闭(使用shutdownNow)ExecutorService,然后重新启动它。我对 Spring 很陌生,不知道该怎么做。到目前为止,我只是向服务提交任务,然后执行shutdownNow,但我的要求说我想重新启动服务。
【问题讨论】:
-
假设您确实在此处实现了用于 bean 初始化的设置代码,您可能可以通过调用 afterPropertiesSet() 逃脱。
-
不,我没有使用 afterPropertiesSet()。它是一个继承的弹簧代码。初始化在 main() 方法中完成并从那里保持。我想知道一种方法可以重新初始化 bean 的“属性”,否则在我的服务关闭时,我将不得不重新初始化整个 bean?
标签: java spring shutdown executorservice