java - Spring Boot Job Scheduler fixedDelay 和 cron

标签 java cron scheduler

我正在运行一个需要 5-10 秒才能完成的 spring boot 计划进程。完成后,60 秒后进程再次开始(请注意,我没有使用 fixedRate):

@Scheduled(fixedDelay=60_000)

N 嗯,我想限制它在周一至周五上午 9 点到下午 5 点每分钟运行一次。我可以用

@Scheduled(cron="0 * 9-16 ? * MON-FRI")

这里的问题是,这类似于 fixedRate - 该过程每 60 秒触发一次,而不管完成上一次运行所花费的时间...

有什么方法可以结合这两种技术?

最佳答案

尝试以下:

@Schedules({ 
  @Scheduled(fixedRate = 1000), 
  @Scheduled(cron = "* * * * * *")
})

关于java - Spring Boot Job Scheduler fixedDelay 和 cron,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52297213/

相关文章:

linux - 我可以在 cron 文件中添加源语句吗?

每月第一个星期一的 Golang Revel Job 规范

java - 如何使用JPA通过外键搜索mySql数据库表?

Java nextLine 在套接字上被阻塞

php - 如何在 centos 6 中为自动运行命令 "service php-fpm restart"创建 crontab?

java - 强制 Spring Boot @Scheduled 方法在失败时调用 "out of schedule"

linux-kernel - 上下文切换内部结构

linux - linux内核调度代码中ttwu的完整形式

java - 从列表中删除对象的最佳方法是什么

java - 为什么在 spring data jpa starter 中 javax.persistence-api 被 jakarta.persistence-api 替换?