Проверка кварцевого планировщика на выполняемые в данный момент задания - PullRequest
1 голос
/ 28 октября 2019

у меня нет JobExecutionContext. Что произойдет, если я использую getCurrentlyExecutingJobs, но не фильтрую для getFireTime? Как в методе ниже.

Я смотрю на Как проверить, выполняется ли задание Quartz cron? для вдохновения.

    /**
     * 
     * @param jk JobKey
     * @return
     * @throws SchedulerException
     */
    public boolean isJobRunning(JobKey jk)
            throws SchedulerException {
        List<JobExecutionContext> currentJobs = this.getJobScheduler().getCurrentlyExecutingJobs();

        for (JobExecutionContext jobCtx : currentJobs) {
            String thisJobName = jobCtx.getJobDetail().getKey().getName();
            String thisGroupName = jobCtx.getJobDetail().getKey().getGroup();
            if (jk.getName().equalsIgnoreCase(thisJobName) && jk.getGroup().equalsIgnoreCase(thisGroupName)
                    //&& !jobCtx.getFireTime().equals(this.getJobScheduler().getContext().getFireTime())
                ) {
                return true;
            }
        }
        return false;
    }   
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...