我正在使用ManagedExecutorService来管理应用程序中的Runnables。部署新代码时,将重新构建应用程序,但列出到ManagedExecutorService的Runnables不会被取消。由于应用程序被重建,Runnables是否应该停止?构成Runnables的底层Java代码可能会随着部署而改变。
答案 0 :(得分:0)
将成员添加到Server销毁应用程序时调用的Application扩展名:
public class MyApplication extends Application {
// override stuff for application like getProperties() etc...
@PreDestroy
public void preDestroy() {
// cancel all the Future<?> objects in the ManagedExecutorService
}
}