Java 中的 Timer 类
Java 中的 Timer 类是线程在后台线程中计划未来执行任务的工具。任务可以执行一次或多次。Timer 类是线程安全的,即类的线程不需要外部同步并且可以共享单个 Timer 对象。需要注意的是,所有构造函数都会启动一个 Timer 线程。
Java 中的 Timer 类自 JDK 1.3 以来就存在。此类可扩展到大量并发计划的任务。在内部,它使用内存中的二叉堆来表示其任务队列,因此计划任务的时间复杂度为 O(log n),其中 n 是并发计划的任务数。
声明 - java.util.Timer 类声明如下:
public class Timer extends Object
让我们看看该类的构造函数。
构造函数名称 | 描述 |
---|---|
Timer() | 此构造函数创建一个新的计时器。 |
Timer(boolean isDaemon) | 此构造函数创建一个新的计时器,其关联线程可以描述为以守护进程方式执行。 |
Timer(String name) | 此构造函数创建一个新的计时器,其关联线程具有参数中指定的名称。 |
Timer(String name, boolean isDaemon) | 此构造函数创建一个新的计时器,其关联线程具有参数中指定的名称,并且可以描述为以守护进程方式运行。 |
以下是 Timer 类的 方法。
方法名称 | 描述 |
---|---|
void cancel() | 它用于终止当前计时器并删除所有当前计划的任务。 |
int purge() | 它从计时器的任务队列中删除所有已取消的任务。 |
void schedule(TimerTask task, Date time) | 它计划在指定时间执行指定的任务。 |
void schedule(TimerTask task, Date firstTime, long period) | 它计划重复执行指定的任务,以固定的延迟开始于指定时间。 |
void schedule(TimerTask task, long delay) | 它计划在 Java 中延迟指定时间后执行指定的任务。 |
void schedule(TimerTask task, long delay, long period) | 它计划重复执行指定的任务,以固定的延迟开始于指定的延迟时间后。 |
void scheduleAtFixedRate(TimerTask task, Date firstTime, long period) | 它计划重复执行指定的任务,以固定的速率开始于指定时间。 |
void scheduleAtFixedRate(TimerTask task, long delay, long period) | 它计划重复执行指定的任务,以固定的速率开始于指定的延迟时间后。 |
广告