Java Timer 类



介绍

Java Timer 类为线程提供了一种在后台线程中调度任务以供将来执行的机制。

  • 此类是线程安全的,即多个线程可以共享单个 Timer 对象,而无需外部同步。

  • 此类调度任务进行一次性执行或定期重复执行。

  • 所有构造函数都会启动一个计时器线程。

类声明

以下是java.util.Timer类的声明:

public class Timer extends Object

Learn Java in-depth with real-world projects through our Java certification course. Enroll and become a certified expert to boost your career.

类构造函数

序号 构造函数和描述
1

Timer()

此构造函数创建一个新的计时器。

2

Timer(boolean isDaemon)

此构造函数创建一个新的计时器,其关联线程可以指定为守护进程运行。

3

Timer(String name)

此构造函数创建一个新的计时器,其关联线程具有指定名称。

4

Timer(String name, boolean isDaemon)

此构造函数创建一个新的计时器,其关联线程具有指定的名称,并且可以指定为守护进程运行。

类方法

序号 方法和描述
1 void cancel()

此方法终止此计时器,并丢弃任何当前已调度的任务。

2 int purge()

此方法从此计时器的任务队列中删除所有已取消的任务。

3 void schedule(TimerTask task, Date time)

此方法安排在指定时间执行指定的任务。

4 void scheduleAtFixedRate(TimerTask task, Date firstTime, long period)

此方法安排指定的任务以固定的速率重复执行,从指定时间开始。

继承的方法

此类继承自以下类的方法:

  • java.util.Object

使用 Timer 示例执行任务的调度

以下示例显示了 Java Timer schedule(TimerTask, Date) 方法的使用方法,用于调度计时器操作。我们使用 CustomTimerTask 对象创建了一个计时器对象。CustomTimerTask 是扩展 TimerTask 类并实现将在计划时间执行的 run() 方法的自定义类。然后,我们创建了一个计时器对象,并使用 schedule() 方法安排了一个任务以立即执行。

Open Compiler
package com.tutorialspoint; import java.util.Date; import java.util.Timer; import java.util.TimerTask; public class TimerDemo { public static void main(String[] args) { // creating timer task, timer TimerTask tasknew = new CustomTimerTask(); Timer timer = new Timer("test",true); // scheduling the task timer.schedule(tasknew, new Date()); try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println("Error"); } } } class CustomTimerTask extends TimerTask { @Override public void run() { System.out.println("working on"); } }

输出

让我们编译并运行上述程序,这将产生以下结果。

working on
广告