0
A
回答
1
假设你已经知道如何安排任务到run daily 的伎俩变得知道如果任务已在这一天没有被安排被提示运行。
对于所需的行为,您需要将最近运行的时间戳记(作为Java环境中的变量或作为磁盘上的文件)保存,在更新它之前检查它并执行功能。
一些伪代码:
Static bool timeManager(){
CurrentTime = getCurrentTime()
TimeStamp = getTimeStamp()
if(CurrentTime - TimeStamp > 1day-afewMinutes){
UpdateTimeStamp(CurrentTime)
return true
}else{
return false
}
}
void jobWrapper(){
if timeManager(){
doTheJob()
}else{
log("Skipping job at "+currentTime+" because job ran "+lastTime)
}
}
编辑:回滚指出,竞争状态,所以我把时间管理器的静态方法。另外我意识到第二个四舍五入可能影响你,所以我想我会从整天中减去几分钟,以避免由于四舍五入造成的阻塞对方的24小时间隔的任务...
0
有很多方法可以做到这一点。 你可以使用像克伦的工作。表达在这里指导:https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm
或者你可以使用Quartz:http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html
或者使用@Scheduled
从春天https://spring.io/guides/gs/scheduling-tasks/
希望这有助于。
相关问题
- 1. 在没有线程的情况下限制Java执行时间
- 2. Servlet在没有时间间隔的情况下执行
- 3. 在Java中没有时区的情况下得到时间
- 4. 只有在没有初始化的情况下才使用alloc才行吗?
- 5. 只有在禁用JavaScript的情况下才执行操作
- 6. 只有在Rails 5中有值的情况下才使用方法中的值
- 7. 只有在没有运行的情况下才使用cron运行python脚本
- 8. asihttprequest只有在没有存储的情况下才能下载
- 9. 只有日期的日历只有在日历没有时间的情况下才会出现?
- 10. 有没有办法在不使用TimePickerDialog的情况下获取TimePicker的时间?
- 11. 在没有线程的情况下同时执行python脚本
- 12. Matlab:在没有Matlab编译器运行时的情况下使用Java类
- 13. 如何确定在没有计时器的情况下已经过了多少时间?
- 14. 在没有Ajax的情况下在javascript中使用ruby方法
- 15. 只有在Julia中没有定义的情况下才能分配
- 16. Javascript:只有在对象存在的情况下才使用JSON.parse
- 17. 只有在“category”设置的情况下,才能使用Django过滤器!
- 18. 只有在存在过滤器过滤器的情况下才可以使用过滤器过滤器?
- 19. 在没有setUp和tearDown方法的情况下计算jmeter中junit测试的执行时间?
- 20. 只有在物品存在的情况下才定义变量
- 21. 只有在关系存在的情况下才进行加载
- 22. 只有在存在一定的时间差的情况下,Mysql才会有明显的选择
- 23. Quartz Scheduler只有在没有运行时才执行作业
- 24. 使用Jetty 7.3在没有javac的情况下执行JSP
- 25. 在没有cron的情况下在外部web服务器上的特定时间执行脚本
- 26. 只有在文件中没有找到字符串的情况下才在bash中执行代码
- 27. 在不使用cron的情况下在Rails的特定时间执行任务
- 28. 在没有project.clj的情况下使用特定的clojure java-wrapper
- 29. 执行只有在一定的时间已经过去了的东西
- 30. 只有在没有数据的情况下才会显示在区块中
请记住,如果他使用多线程,你的伪代码是一个竞争条件 –