java定时器的使用

来源:互联网 发布:四知原文及翻译 编辑:程序博客网 时间:2024/04/29 12:39

  项目中用到一个定时任务,所以用到了java中定时器,大家可根据下面的几个方法测试,timer3可继续拓展,改为按某个周期执行。

<span style="font-size:18px;">import java.util.Calendar;import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TimeTest {    public static void main(String[] args) {        timer1();        //timer2();        //timer3();    }    // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)    public static void timer1() {        Timer timer = new Timer();        timer.schedule(new TimerTask() {            public void run() {                System.out.println("-------设定要指定任务--------");            }        }, 2000);// 设定指定的时间time,此处为2000毫秒    }    // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行    // schedule(TimerTask task, long delay, long period)    public static void timer2() {        Timer timer = new Timer();        timer.schedule(new TimerTask() {            public void run() {                System.out.println("-------设定要指定任务--------");            }        }, 1000, 5000);    }    // 第三种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.    // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)    public static void timer3() {        Calendar calendar = Calendar.getInstance();        calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时        calendar.set(Calendar.MINUTE, 0);       // 控制分        calendar.set(Calendar.SECOND, 0);       // 控制秒        Date time = calendar.getTime();         // 得出执行任务的时间,此处为今天的12:00:00        Timer timer = new Timer();        timer.scheduleAtFixedRate(new TimerTask() {            public void run() {                System.out.println("-------设定要指定任务--------");            }        }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行    }}</span>


0 0
原创粉丝点击