public class TimerTest implements TaskInter{
/**调度任务**/
@Override
public void work() {
// TODO Auto-generated method stub
System.out.println("timer tast start work ...");
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TimerTest test = new TimerTest();//调度任务实现类
Date dt = new Date();//调度开始时间
TimerTaskImpl task = new TimerTaskImpl(dt,Calendar.SECOND,5,test);//表示每隔5s执行一次
TimerDispatcher dispatcher = new TimerDispatcher(dt,task);
dispatcher.startDispatcher();
}
}
拷贝附件timer.jar到lib目录,按照上述测试即可实现。
2009-10-13 update:
最近测试发现,上次timer.jar有一个bug,在起始调度时间在当前时间之前时,会自动调用。
今天新发布的timer.jar,实现了首次调度时间为调度周期在当前时间之后(当前时间)时,避免上次出现的问题:
eg. 当前时间:2009-10-13 09:47:00
调度指定时间:2009-10-13 08:47:00
调度间隔:4h
首次调用时间为:2009-10-13 12:47:00,而不是在系统启动就首次调度。