Java 定时器

2019-09-15  本文已影响0人  希希里之海

Java 定时器

1. 概述

Timer 可以按计划执行重复的任务或者定时执行指定任务,这是因为 Timer 内部利用了一个后台线程 TimerThread 有计划地执行指定任务。

一个 Timer 对象对应的是单个后台线程,其内部维护了一个 TaskQueue,用于顺序执行定时器任务 TimeTask。

即:Timer 是定时器,TimerTask 是定时器任务


2. 例子

举个例子:

public class TimerDemo {

    public static void main(String[] args) {
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                // 重写 run() 方法,返回系统时间
                System.out.println(System.currentTimeMillis());
            }
        };
        Timer timer = new Timer();
        // 在经过 2000 毫秒的初始化延时后执行一次(单词执行)
        timer.schedule(task, 2000);
        // 从现在开始每间隔 1000 ms 计划执行一个任务(规律性重复执行调度 TimerTask)
        timer.schedule(task, 0 ,1000);
    }

}

3. Timer 常用构造函数和方法

3.1 Timer 的构造函数
3.2 Timer 的方法

4. Timer 常用方法

定时任务都是抽象类 TimerTask 子类的实例,这些子类实现了 Runnable 接口,当子类化 TimerTask 的时候,你需要重写其 void run() 方法。

注意:定时任务应该很快完成。

方法
上一篇 下一篇

猜你喜欢

热点阅读