问题描述
我的一个定时任务放在tomcat下面,每天定时运行,类是继承了TimerTask,重写了run方法,但是我只要修改操作系统的时间,程序就在那一直等待,不能正常运行。这个怎么修改啊
解决方案
Timer对是基于绝对时间的,因此任务对系统时间的改变是敏感的;而ScheduledThreadPoolExecutor支持相对时间。建议使用ScheduledThreadPoolExecutor
解决方案二:
我也只写过Timer的,2楼的高手,以后有问题就请教你了,呵呵!
解决方案三:
你可以不根据系统时间啊,你可以写一个线程模拟时间,然后提供一个可以暂停和重新开始的操作,和一个可以自己控制时间的参数入口啊,要用到时候输入一个参数,点击开始就可以了,不用的时候直接点暂定,或者关闭啊!要么,你就找个稳定点的服务器,直接取上面的时间为标准啊
时间: 2024-10-25 19:27:24