跨多个执行的Java计划任务

时间:2012-09-10 19:11:52

标签: java timer

我最近为我的朋友和我自己设置了一个Minecraft服务器,我认为为我编写自己的维护包装将是一个有趣的项目,我会定期重启,备份和诊断服务器的各个方面

我看到了ScheduledExecutorService课程并认为它很完美,但我遇到了一个问题。我几乎每天晚上都关闭了我的电脑,这节课按时间运行,我想每周只运行一次任务。实现这个最简单的方法是什么?

我可以使用另一个类根据实际时间自动处理执行任务而不是我可以使用的已用时间吗?

编辑:我应该补充一点,我意识到直接使用任何标准类都行不通。但是,每次执行任务时都可以很容易地将下一个执行时间保存到磁盘,然后在下次启动包装器时重新调用该列表,从而允许它从或多或少地停止在它停止的位置。

2 个答案:

答案 0 :(得分:1)

使用调度程序库(Quartz)可以在与数据库后端结合使用时执行这些类型的功能。可以安排作业在特定时间或频率运行。

答案 1 :(得分:0)

尝试Quartz

Quartz包含开箱即用的持久性机制,其中包括调度服务等。