如何触发关闭番石榴 AbstractScheduledService?

我正在使用一些继承自 的服务AbstractScheduledService,这些服务由ServiceManager. 一切正常,但现在有一个服务runOneIteration需要很长时间,结果,我的进程需要很长时间才能终止(超过五秒)。


还有其他继承自 的服务AbstractExecutionThreadService,它们有类似的问题,我可以通过


@Override

protected final void triggerShutdown() {

    if (thread != null) thread.interrupt();

}

并存储private volatile thread在run方法中。然而,有没有triggerShutdown对AbstractScheduledService在规定这个问题。


我已经考虑过runOneIteration减少工作量等替代方案,但它既丑陋又低效。


我无法覆盖,stopAsync因为它是最终的,我看不到其他任何东西。有做这样的事情的钩子吗?


动漫人物
浏览 129回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java