2017-04-17 4 views
0

Ich muss eine Java-Klasse schreiben, die verschiedene Zeiten aus einer Datenbank holt und dann eine Funktion zu diesen Zeiten aufruft. Die Zeiten können sich in der Datenbank ändern und ein Wert, der der Zeit im DB entspricht, wird als Argumente an die Funktion gesendet. Ich muss sicherstellen, dass dies jeden Tag zu der im Db genannten Zeit geschieht.Run cron4j zu verschiedenen Zeiten

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(); 

Dieser Code ruft die Klasse auf 05.00.00 jeden Tag, aber ich bin mir nicht sicher, was in passieren Thread.sleep() Ich brauche für mehrere verschiedene Zeiten zu schreiben und stellen Sie sicher, es läuft für eine lange Zeit dh über ein Jahr.

Antwort

0

Wenn Sie möchten, dass dies für ein Jahr läuft, dann sollten Sie nicht sleep(). Sie müssen Ihre Scheduler gestoppt nur von Ihrer Anwendung heruntergefahren werden. So lange Ihre Anwendung läuft, angeblich für ein Jahr oder länger, sollte auch Ihr Scheduler laufen.

Verwandte Themen