/// <summary> /// 获取单个任务状态(从scheduler获取) /// </summary> /// <param name="jobInfo">任务信息</param> /// <returns></returns> private TriggerState _getTriggerState(string triggerName, string triggerGroupName) { TriggerKey triggerKey = KeyManager.CreateTriggerKey(triggerName, triggerGroupName); var triggerState = Scheduler.GetTriggerState(triggerKey); return(triggerState); }
public override bool ModifyJobCron(customer_quartzjobinfo jobInfo) { var scheduleBuilder = CronScheduleBuilder.CronSchedule(jobInfo.Cron); var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName); var trigger = TriggerBuilder.Create().StartAt(DateTimeOffset.Now.AddYears(-1)).WithIdentity(triggerKey).WithSchedule(scheduleBuilder.WithMisfireHandlingInstructionDoNothing()).Build(); Scheduler.RescheduleJob(triggerKey, trigger); return(true); }
public bool DeleteJob(CronJob jobInfo) { var jobKey = KeyManager.CreateJobKey(jobInfo.Name, jobInfo.GroupName); var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName); Scheduler.PauseTrigger(triggerKey); Scheduler.UnscheduleJob(triggerKey); Scheduler.DeleteJob(jobKey); return(true); }
public bool DeleteJob(custom_job_infoes jobInfo) { var jobKey = KeyManager.CreateJobKey(jobInfo.JobName, jobInfo.JobGroupName); var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName); Scheduler.PauseTrigger(triggerKey); Scheduler.UnscheduleJob(triggerKey); Scheduler.DeleteJob(jobKey); return(true); }
public override bool ModifyJobCron(custom_job_infoes jobInfo) { var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName); ITrigger trigger = TriggerBuilder.Create().StartAt(DateTimeOffset.Now) .WithIdentity(jobInfo.TriggerName, jobInfo.TriggerGroupName) .WithSimpleSchedule(x => x.WithIntervalInSeconds(jobInfo.Cycle.HasValue? jobInfo.Cycle.Value:1).WithRepeatCount(jobInfo.RepeatCount.Value - 1)) .Build(); Scheduler.RescheduleJob(triggerKey, trigger); return(true); }
public override bool ModifyCronExpress(CronJob jobInfo) { var scheduleBuilder = CronScheduleBuilder.CronSchedule(jobInfo.CronExpress); var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName); var trigger = TriggerBuilder.Create().StartAt(DateTimeOffset.Now.AddYears(-1)).WithIdentity(triggerKey).WithSchedule(scheduleBuilder.WithMisfireHandlingInstructionDoNothing()).Build(); //WithMisfireHandlingInstructionDoNothing 不奏效 //Remove (delete) the Quartz.ITrigger with the given key, and store the new given one Scheduler.RescheduleJob(triggerKey, trigger); return(true); }