Java多线程-----定时器(Timer)及其实现
import java.util.Timer;
import java.util.TimerTask;
public class TimerExample {
// 定义一个定时任务
private static class MyTimerTask extends TimerTask {
public void run() {
System.out.println("定时任务执行,当前时间:" + System.currentTimeMillis());
}
}
public static void main(String[] args) {
Timer timer = new Timer();
// 定义一个任务并安排在10秒后执行
MyTimerTask myTask = new MyTimerTask();
timer.schedule(myTask, 10000); // 等待时间为10秒,即10000毫秒
// 安排一个任务在10秒后执行,然后每3秒执行一次
timer.schedule(myTask, 10000, 3000);
// 安排一个任务在固定延迟后执行,即在10秒后取消
timer.schedule(new TimerTask() {
public void run() {
System.out.println("延迟任务执行,即将取消定时任务");
timer.cancel(); // 取消此定时器
}
}, 10000);
}
}
这段代码演示了如何使用java.util.Timer
来安排任务的执行。它定义了一个MyTimerTask
类继承自TimerTask
,并重写了run
方法。在main
方法中,我们创建了一个Timer
实例,并安排了任务的执行。其中包括了使用schedule
方法的不同重载版本来设置任务的执行时间和周期。最后,我们还演示了如何在任务执行后取消定时器。
评论已关闭