java - 如何在java中取消定时的cron作业?

标签 java

  public class CronTriggerApp {
        public static void main(String[] args) {

            try {

                SchedulerFactory sf = new StdSchedulerFactory();
                Scheduler scheduler = sf.getScheduler();

                JobDetail job = JobBuilder.newJob(Main.class)
                        .withIdentity("dummyJobName", "group1").build();
     System.out.println(job);
                Date startTime = DateBuilder.nextGivenSecondDate(null, 5);
     System.out.println(startTime);
                // run every 20 seconds infinite loop
                CronTrigger crontrigger = TriggerBuilder
                        .newTrigger()
                        .withIdentity("TwentySec", "group1")
                        .startAt(startTime)
                        .startNow()
                        .withSchedule(CronScheduleBuilder.cronSchedule("* * * ? * *"))//0 53 12 * * ? *
                        .build();

                scheduler.start();
                scheduler.scheduleJob(job, crontrigger);

                 //scheduler.shutdown();

            } catch (SchedulerException se) {
                se.printStackTrace();
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
    }

public class Main implements Job {
    public void execute(JobExecutionContext context) throws JobExecutionException 
    {

        System.out.println("Trigger Starts.."+new Date());
        System.out.println("ALL_OFF");

    }
}

通过使用上面的代码我可以安排 cron 作业..但是如果想取消计划时间如何取消或停止计划任务? 谁能帮助我如何停止或取消计划任务?

最佳答案

您可以公开端点来中断它。并使用调度程序的以下功能来停止它。 Scheduler.interrupt(jobDetail.getKey());

关于java - 如何在java中取消定时的cron作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55841869/

相关文章:

java - 加入MP3文件——将Java代码转换为Android

Java - 标记为私有(private)的字段仍然可以在主函数中更改吗?

java - 根据 xsd 验证 java.util.Map

java - 如何在vscode中使用相对路径为eclipse Java项目添加引用的库JAR文件

java - java编译究竟是如何发生的?

java - 无法在Java中的SparkSQL中读取文件

java - 如何获取 Java 类引用的初始化值

Java 使用位

java - 使用 JAXB 对同一个 Java 对象进行多个 XML 映射?

JScrollPane 中带有 boxLayout 的 Java 可拖动 JPanel