日期:2014-05-19  浏览次数:20759 次

jcrontab怎么避免重复运行定时任务
某个java程序星期一到五需要晚上下班后开始执行,但星期六、日需要从早上开始执行。

问题是程序什么时候跑完说不定,如果数据比较多可能会跑到第二天早上,这种情况比较少,但万一遇到,而且碰上是星期六,这样的话程序就重复运行了,有没有办法控制一下呢(如果程序在跑,定时任务就不在运行)。

------解决方案--------------------
个人认为:在程序启动判断一个标识,如标识有就不启动,无就启动。对标识可以是数据库信息,或者是文件锁。最简单就是启动时生成一个文件,运行完毕删除文件,以文件有无判断是否启动。