我需要编写一个Java类,它从数据库中获取不同的时间,然后在那些时候调用一个函数。时间可以在数据库中更改,并且与Db中的时间对应的值作为参数发送到函数。 我需要确保每天在Db中提到的时间发生这种情况。
Scheduler s = new Scheduler();
s.schedule("0 5 * * *", new Runnable() {
public void run() {
//call your function
TestClass tc = new TestClass(value);
}
});
// Starts the scheduler.
s.start();
try {
Thread.sleep(1000L * 60L * 10L);
} catch (InterruptedException e) {
;
}
// Stops the scheduler.
s.stop();
此代码每天5:00:00调用该类,但我不确定在Thread.sleep()
传递什么
我需要写多个不同的时间,并确保它运行很长时间,即一年多。
答案 0 :(得分:0)
如果你想让它运行一年,那你就不应该sleep()
。您需要仅停止正在关闭应用程序的Scheduler
停止。因此,只要您的应用程序正在运行(假设为一年或更长时间),您的调度程序也应该正在运行。