QuertZ常用的定时策略

QuertZ入门
QuertZ保留执行结果,留待下次调用
QuertZ耗时任务等待执行完成
QuertZ常用的定时策略
  • 定时策略----SimpleTrigger从什么时间开始,间隔多久执行重复操作,可以限制最大次数
  //时间策略
  ITrigger trigger = TriggerBuilder.Create()
           .WithIdentity("sendMessageTrigger", "group1")
           .StartAt(new DateTimeOffset())//从某一点开始执行
           .StartNow()//马上开始执行
           .WithSimpleSchedule(w => w
           .WithIntervalInSeconds(3) //多久执行一次
           .WithRepeatCount(5)//一共执行几次
           .RepeatForever() //永久执行
           ) 
           .Build();

 //时间策略
 ITrigger trigger1 = TriggerBuilder.Create()
          .WithIdentity("sendMessageTrigger", "group1")
          .WithCronSchedule("5/10 * * * * ?")//从5s开始,每隔10s执行一次
          .Build();

谢谢打赏

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要添加动态定时任务,可以使用Quartz的JobDetail和Trigger来实现。首先,你需要创建一个实现了Quartz的Job接口的类,该类将被用来执行你的任务。然后,你需要创建一个Trigger对象,该对象定义了你的任务应该何时执行。最后,你需要将JobDetail和Trigger对象添加到Quartz的Scheduler中。 以下是一个简单的示例代码,可以帮助你开始创建动态定时任务: ``` public class MyJob implements Job { public void execute(JobExecutionContext context) throws JobExecutionException { // 这里写你的任务逻辑代码 } } public class QuartzScheduler { public static void main(String[] args) throws SchedulerException { // 创建一个Scheduler对象 Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler(); // 创建一个JobDetail对象,并指定Job实现类 JobDetail jobDetail = JobBuilder.newJob(MyJob.class) .withIdentity("job1", "group1") .build(); // 创建一个Trigger对象,定义任务的执行时间 Trigger trigger = TriggerBuilder.newTrigger() .withIdentity("trigger1", "group1") .startNow() .withSchedule(CronScheduleBuilder.cronSchedule("0/5 * * * * ?")) .build(); // 将JobDetail和Trigger对象添加到Scheduler中 scheduler.scheduleJob(jobDetail, trigger); // 启动Scheduler scheduler.start(); } } ``` 在上面的示例代码中,我们创建了一个名为MyJob的类,该类实现了Quartz的Job接口。我们还创建了一个QuartzScheduler类,该类使用Quartz创建了一个Scheduler对象,并将MyJob类作为JobDetail对象添加到Scheduler中。在Trigger对象中,我们定义了任务应该每隔5秒执行一次。 你可以根据自己的需求修改代码,以实现你的动态定时任务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值