做项目时,需要一个定时任务,定期的将日志处理成报表,并生成报表。可是,这个项目到测试那里,测试,出了bug,定时任务不能触发。。。。。。我自己测试,发现,只要修改了系统的时间:例:我定了每周一0晨0点执行。。我改成前周的周日的22点,结果,并没有触发定时任务,项目的日志里也没有定时任务的触发时产生的日志信息。。。。我想问,为啥修改了系统时间定时任务就不触发了??修改系统时间后,如果重启这个项目的服务,就可以正常的触发定时任务。。。。是为什么呢??????
2 回答
HUH函数
TA贡献1836条经验 获得超4个赞
你这个问题是调用ScheduledThreadPoolExecutor造成的么,在周期调度任务过程中,如果将系统时间突然拨前,就会发现在队列中的线程不再被调度了,调度器似乎停止了,具体原因找了半天也没有找到,有高手帮忙解答一下么。出现问题的环境是centos5+jdk1.7,PS:在win7+jdk1.6下未重现。。。。。
添加回答
举报
0/150
提交
取消