2017-04-17 63 views
0

我需要编写一个Java类,它从数据库中获取不同时间,然后在这些时间调用一个函数。时间可以在数据库中改变,并且与Db中的时间相对应的值被作为参数发送给函数。 我需要确保每天在Db中提到的时间发生这种情况。在多个不同时间运行cron4j

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

如果你想要这个运行一年,那么你不应该sleep()。您需要让您的Scheduler仅在应用程序关闭时停止。所以只要你的应用程序正在运行,据说一年或更长时间,你的调度程序也应该运行。