如何从外部停止 quartz 调度程序,它是 运行 从 main 方法
How to stop quartz scheduler externally which is running from main method
public static void main(String[] test) {
try {
JobKey jobKeyA = new JobKey("JobAssignVehicleDailyrideFixedVehicle", "group1");
JobDetail jobA = JobBuilder.newJob(JobAssignVehicleDailyrideFixedVehicle.class)
.withIdentity(jobKeyA).build();
Trigger trigger1 = TriggerBuilder
.newTrigger()
.withIdentity("Trigger1", "group1")
.withSchedule(
CronScheduleBuilder.cronSchedule("0/5 * * * * ?"))
.build();
scheduler = new StdSchedulerFactory().getScheduler();
scheduler.start();
scheduler.scheduleJob(jobA, trigger1);
} catch (SchedulerException e) {
logger.error(e);
}
}
我运行这个方法来自主要class来自jar文件。
如何在不终止 java 进程的情况下正确关闭石英。
有没有办法在当前 运行 quartz
的调度程序上调用关闭方法
在其他线程中使用 new StdSchedulerFactory().getScheduler()
获取对在主线程中启动的调度程序的引用。
为什么这行得通?在两个工厂实例上调用 StdSchedulerFactory#getScheduler 使用相同的 SchedulerRepository 单例,其中包含所有 运行 石英调度程序的映射,它在这种情况只是默认调度程序。
public static void main(String[] test) {
try {
JobKey jobKeyA = new JobKey("JobAssignVehicleDailyrideFixedVehicle", "group1");
JobDetail jobA = JobBuilder.newJob(JobAssignVehicleDailyrideFixedVehicle.class)
.withIdentity(jobKeyA).build();
Trigger trigger1 = TriggerBuilder
.newTrigger()
.withIdentity("Trigger1", "group1")
.withSchedule(
CronScheduleBuilder.cronSchedule("0/5 * * * * ?"))
.build();
scheduler = new StdSchedulerFactory().getScheduler();
scheduler.start();
scheduler.scheduleJob(jobA, trigger1);
} catch (SchedulerException e) {
logger.error(e);
}
}
我运行这个方法来自主要class来自jar文件。 如何在不终止 java 进程的情况下正确关闭石英。 有没有办法在当前 运行 quartz
的调度程序上调用关闭方法在其他线程中使用 new StdSchedulerFactory().getScheduler()
获取对在主线程中启动的调度程序的引用。
为什么这行得通?在两个工厂实例上调用 StdSchedulerFactory#getScheduler 使用相同的 SchedulerRepository 单例,其中包含所有 运行 石英调度程序的映射,它在这种情况只是默认调度程序。