在Java中,Timer类是用于执行计划任务的工具类。它允许您在指定的延迟时间后执行任务,也可以按照固定的时间间隔重复执行任务。
Timer类的用法如下:
创建一个Timer对象:Timer timer = new Timer();
使用schedule()方法执行任务一次或者按照固定的时间间隔执行任务:
执行任务一次:
timer.schedule(new TimerTask() {
@Override
public void run() {
// 任务逻辑
}
}, delay);
这里的delay是延迟时间,单位是毫秒。
按照固定的时间间隔执行任务:
timer.schedule(new TimerTask() {
@Override
public void run() {
// 任务逻辑
}
}, delay, period);
这里的delay是延迟时间,period是时间间隔,单位都是毫秒。
使用cancel()方法取消任务的执行:timer.cancel();
需要注意的是,Timer类是单线程的,如果一个任务的执行时间过长,可能会影响其他任务的执行。此外,Timer类不适用于需要精确控制执行时间的场景,因为它受系统时间的影响。在Java 5及以后的版本中,推荐使用ScheduledThreadPoolExecutor类来替代Timer类。