【问题标题】:Invoke java program at specific intervals以特定时间间隔调用 java 程序
【发布时间】:2012-04-15 21:39:54
【问题描述】:

我有一个从电子邮件帐户读取收件箱消息的程序,正如标题所说,我想每 1.5 小时运行一次该程序。

是否有任何操作系统(Windows 和 Linux)级别或 JVM 级别的解决方案可以帮助执行任务。 谢谢。

【问题讨论】:

    标签: java operating-system scheduling scheduled-tasks


    【解决方案1】:

    在 Windows 上使用 at 命令或“计划作业”,在 Linux 上使用 cron 作业。

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

    【讨论】:

      【解决方案2】:

      取自javadocScheduledExecutorService

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

      【讨论】:

        【解决方案3】:

        创建一个cron job

        输入crontab -e

        并为您的命令添加一个条目。

        【讨论】:

          猜你喜欢
          • 2017-01-27
          • 1970-01-01
          • 1970-01-01
          • 2011-01-09
          • 2015-08-24
          • 1970-01-01
          • 2018-10-30
          • 2018-02-18
          • 1970-01-01
          相关资源
          最近更新 更多