java——定时任务

java定时任务直接看代码
public void timeTask(){
    Timer timer = new Timer();
    timer.schedule(new TimerTask() {
            public void run() {
                //方法体
                       System.out.println("执行中。。。");
         }
     }, 0, 5*60*1000);//经过0ms开始第一次调用,然后每隔5*60*1000ms执行一次。
}
schedule()方法参数说明:
1、调度一个task,经过delay(ms)后开始进行调度,仅仅调度一次。
public void schedule(TimerTask task, long delay)
 
2、在指定的时间点time上调度一次。
public void schedule(TimerTask task, Date time)
 
3、调度一个task,在delay(ms)后开始调度,每次调度完后,最少等待period(ms)后才开始调度。
public void schedule(TimerTask task, long delay, long period)
 
4、调度一个task,在firstTime时开始调度,每次调度完后,最少等待period(ms)后才开始调度。
public void schedule(TimerTask task, Date firstTime, long period)
 
scheduleAtFixedRate()(可以代替schedule()方法)方法参数说明:
1、调度一个task,在delay(ms)后开始调度,然后每经过period(ms)再次调度。
public void scheduleAtFixedRate(TimerTask task, long delay, long period)
 
2、调度一个task,在firstTime时开始调度,然后每经过period(ms)再次调度。
public void scheduleAtFixedRate(TimerTask task, Date firstTime,long period)
 
schedule方法和scheduleAtFixedRate方法比较:
schedule在计算下一次执行的时间的时候,是通过当前时间(任务执行前得到) + 时间间隔,参考时间是运行的实际时间。
scheduleAtFixedRate方法是通过当前需要执行的时间(就是计算出现在应该执行的时间)+ 时间间隔,参考时间是理论时间点。
原文地址:https://www.cnblogs.com/it-mh/p/10619631.html