zoukankan      html  css  js  c++  java
  • java中Timer的使用

    // 第一种方法:设定指定任务task在指定时间time执行后执行TimerTask方法(执行一次)

    public static void timer1(){
      Timer timer = new Timer();
      timer.schedule(new TimerTask(){
        public void run(){
          System.out.println("任务1开始执行了--");
        }
      }, 2000);//设定指定的时间time,此处为2000毫秒
    }
    //第二种方法:指定1000毫秒以后开始执行TimerTask方法,然后相隔5000毫秒执行一次,下一次的执行时间点=上一次程序执行完成的时间点+间隔时间 

    public static void timer2(){
      Timer timer = new Timer();
      timer.schedule(new TimerTask(){
        public void run(){
          System.out.println("任务2开始执行了--");
        }
      }, 1000,5000);
    }
    // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。

    //下一次的执行时间点=上一次程序开始执行的时间点+间隔时间 ;如果前一个任务要执行5秒,而当前任务已经开始执行了,因此两个任务间存在重叠,需要考虑线程同步
    public static void timer3(){
      Timer timer = new Timer();
      timer.scheduleAtFixedRate(new TimerTask(){
        public void run(){
          System.out.println("任务3开始执行了--");
        }
      }, 1000, 5000);
    }
    // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.
    public static void timer4(){
      Calendar calendar = Calendar.getInstance();
      calendar.set(Calendar.HOUR_OF_DAY, 11);
      calendar.set(Calendar.MINUTE, 0);
      calendar.set(Calendar.SECOND, 0);
      Date time = calendar.getTime();
      Timer timer = new Timer();
      timer.schedule(new TimerTask(){
        public void run(){
          System.out.println("任务4开始执行了--");
        }
      },time, 1000*60*60*24);
    }

    public static void main(String[] args) {
      // timer1();
      // timer2();
      // timer3();
      timer4();
    }

  • 相关阅读:
    libevent 源码学习四 —— 源代码文件组织
    c++上待解决的内容
    常用网址
    tin mission 2021 11 14
    问题--c++
    小思维--c++
    thin mission 2021 11 13
    physics--lecture--Centre of Gravity & Inertia and conservation of angular momentum
    physics--lecture--torque--static equilibrium
    physics—lecture ——torque
  • 原文地址:https://www.cnblogs.com/tianmengwei/p/5066014.html
Copyright © 2011-2022 走看看