как приостановить работу в кварцевом планировщике? - PullRequest
3 голосов
/ 13 октября 2011

Привет, я создаю приложение, которое выполняет метод класса на основе выражения cron.Для этого я использую Spring Quartz, в котором мне нужно настроить все эти вещи в моем Spring-файле, он работает нормально, и задания выполняются на основе выражения cron. Но теперь я хочу приостановить следующее выполнение определенной работы в Java-классена выбор пользователя из пользовательского интерфейса.Тогда есть ли способ сделать это ??

Могу ли я получить подробную информацию обо всех запущенных заданиях в контексте?в таком случае я могу отфильтровать задания и попытаться приостановить их для следующего выполнения.

Ответы [ 4 ]

7 голосов
/ 19 октября 2011

Введите ваш SchedulerFactoryBean .Используйте метод getScheduler для получения кварцевого планировщика и используйте rescheduleJob или другие методы из кварцевого API для выполнения вашей задачи.

5 голосов
/ 10 ноября 2011

Мы можем использовать метод stdScheduler.pauseJob (JobKey jobKey), чтобы уменьшить количество циклов, упомянутых в приведенном выше коде

5 голосов
/ 07 ноября 2011

Я получил работу, используя следующий код

stdScheduler представляет собой графикFeoryBean

 String groupnames[] = stdScheduler.getJobGroupNames();
 for (String groupName : groupnames) {
     String[] jobNames = stdScheduler.getJobNames(groupName);
     for (String jobName : jobNames) {
            if (jobName.equals("jobName")) {
                    stdScheduler.pauseJob(jobName, groupName);
            }
     }
 }          
0 голосов
/ 03 мая 2018

Если вы получили SchedulerFactoryBean путем инъекции или каким-либо другим способом, есть удобные методы:

schedulerFactoryBean.getScheduler().standby();
schedulerFactoryBean.getScheduler().start();

При непосредственном использовании Quartz это также работает:

@Autowired
private Scheduler scheduler;

...
scheduler.standby();
...
scheduler.start();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...