簡體   English   中英

以特定間隔調用Java程序

[英]Invoke java program at specific intervals

我有一個程序可以從電子郵件帳戶讀取收件箱消息,如標題所示,我希望每1.5小時運行一次該程序。

是否有任何OS(Windows和Linux)級別或JVM級別的解決方案可幫助執行任務。 謝謝。

在Windows上,使用at命令或“預定作業”,在Linux上,使用cron作業。

http://support.microsoft.com/kb/313565
http://en.wikipedia.org/wiki/Cron

取自ScheduledExecutorService javadoc

 import static java.util.concurrent.TimeUnit.*;
 class BeeperControl {
    private final ScheduledExecutorService scheduler =
       Executors.newScheduledThreadPool(1);

    public void beepForAnHour() {
        final Runnable beeper = new Runnable() {
                public void run() { System.out.println("beep"); }
            };
        final ScheduledFuture<?> beeperHandle =
            scheduler.scheduleAtFixedRate(beeper, 10, 10, SECONDS);
        scheduler.schedule(new Runnable() {
                public void run() { beeperHandle.cancel(true); }
            }, 60 * 60, SECONDS);
    }
 }

創建一個cron作業

鍵入crontab -e

並為您的命令添加一個條目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM