Java中的计时器类

Java中的Timer类是线程用于计划任务以供将来在后台线程中执行的工具。任务可以执行一次或多次。Timer类是线程安全的,即该类的线程不需要外部同步,并且可以共享一个Timer对象。需要注意的一点是,所有构造函数都启动一个Timer线程。

Java的Timer类从JDK 1.3开始出现。此类最多可以同时执行大量任务。在内部,它使用内存中的二进制堆表示其任务队列,因此调度任务的时间复杂度为O(log n),其中n是并发调度的任务数。

声明-java.util.Timer类的声明如下-

public class Timer extends Object

让我们看一下该类的构造函数。

构造器名称描述
计时器()该构造函数创建一个新的计时器。
计时器(布尔isDaemon)此构造函数创建一个新计时器,其链接线程可以描述为作为守护程序执行
计时器(字符串名称)此构造函数创建一个新的计时器,该计时器的链接线程具有参数中指定的名称
计时器(字符串名称,布尔值isDaemon)该构造函数创建一个新的计时器,该计时器的链接线程具有在参数中指定的名称,并且可以描述为作为守护程序运行。

这是Timer类的方法。

方法名称描述
无效cancel()它用于终止当前计时器并摆脱任何当前计划的任务
int purge()它从计时器的任务队列中删除所有已取消的任务。
无效的时间表(TimerTask任务,日期时间)它计划指定的任务在特定时间执行。
无效的时间表(TimerTask任务,Date firstTime,长时间段)它将指定的任务安排为在指定时间开始重复执行固定延迟。
无效的时间表(TimerTask任务,长时间延迟)在给定的延迟后,它将计划指定的任务以Java执行。
无效的时间表(TimerTask任务,长时间延迟,长时间)它将指定的任务安排为在指定的延迟之后开始重复执行固定延迟。
void scheduleAtFixedRate(TimerTask任务,日期为第一时间,很长一段时间)它计划指定的任务以重复的固定速率执行,该操作从指定的时间开始。
作废scheduleAtFixedRate(TimerTask任务,长时间延迟,长时间)它计划在指定的延迟后开始执行指定的任务以重复执行固定速率。