gpt4 book ai didi

java - 强制在 Java 应用程序中定期执行周期性任务

转载 作者:行者123 更新时间:2023-11-30 04:42:55 26 4
gpt4 key购买 nike

ScheduledExecutorService 似乎存在一个问题,如果它无法获得空闲线程,则周期性任务将延迟发生。对我来说不幸的是,分配给它的定期任务确实需要按计划进行。目前,它被安排为每分钟一次,但有时由于应用程序正忙于其他事情(我认为这就是原因),它无法在五分钟内完成,而五分钟恰好是“主要生产错误”阈值。

如何通过优先级确定或以其他方式控制线程平衡器来强制执行此操作?

最佳答案

如果您的 ScheduledExecutorService 用于其他任务,或者您的任务有时需要超过 1 分钟才能运行,您只需增加 ScheduledExecutorService 中可用的线程数即可。因此,如果一项任务尚未运行完毕,执行器仍然可以运行新的任务。

ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(10);

(我随机选择了 10 个 - 如果您每分钟运行一次任务,并且它最多可以运行 5 分钟,那么就会给您留下一些犯错的余地)

关于java - 强制在 Java 应用程序中定期执行周期性任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11836726/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com