zoukankan      html  css  js  c++  java
  • Java Timer和TimerTask的使用

    如果要执行一些简单的定时器任务,无需做复杂的控制,也无须保存状态,可以考虑使用JDK入门级的定时器Timer来执行重复任务。

    JDK中,定时器任务的执行需要两个基本的类:

    java.util.Timer;java.util.TimerTask;

    运行一个定时任务基本步骤如下:

    1、建立一个要执行的任务TimerTask;

    2、创建一个Timer实例,通过Timer提供的schedule()方法,将TimerTask加入到定时器Timer中,同时设置执行的规则即可;

    Timer中的schedule()有多种重载方法,以适应不同的情况:

    schedule(TimerTask task, Date time):安排在指定时间执行指定任务;

    schedule(TimerTask task, Date firsttime, Long period):安排指定的任务在指定时间指定周期重复执行;

    schedule(TimerTask task, Long delay):安排在指定延迟后执行指定任务;

    schedule(TimerTask task, Long delay, Long period):安排指定的任务从指定的延迟后开始重复的固定延迟执行;

    示例如下:

    import java.util.Timer; import java.util.TimerTask;

    public class Test {  class TestTimerTask extends TimerTask{   private int i = 1;   @Override   public void run() {    System.out.println("定时器第"+i+"次执行!");    i += 1;       }     }  public static void main(String[] args) {   Test test = new Test();   Timer timer = new Timer();   timer.schedule(test.new TestTimerTask(), 3000, 2000);  } }

  • 相关阅读:
    51nod1432 独木舟
    51nod1126 求递推序列的第N项
    Alice, Bob, Oranges and Apples CodeForces
    区间dp
    平面几何基础
    图的割点、桥与双连通分支
    hihocoder 1305 区间求差
    hdu 2444 The Accomodation of Students 【二分图匹配】
    状压dp
    hdu 1525 Euclid's Game【 博弈论】
  • 原文地址:https://www.cnblogs.com/runnigwolf/p/7231898.html
Copyright © 2011-2022 走看看