java线程的TimerTask
TimerTask是Java中的一个抽象类,用于定时执行任务。它是Timer类的成员,用于指定定时任务的具体执行逻辑。
要使用TimerTask,需要继承它并重写其抽象方法run(),在run()方法中编写具体的任务逻辑。然后,通过Timer类的schedule()方法将TimerTask对象与指定的时间点或时间间隔关联起来,以便在指定的时间点或时间间隔后执行任务。
以下是一个使用TimerTask的示例代码:
import java.util.Timer;
import java.util.TimerTask;
public class MyTimerTask extends TimerTask {
@Override
public void run() {
// 执行具体的任务逻辑
System.out.println("TimerTask is running...");
}
public static void main(String[] args) {
TimerTask task = new MyTimerTask();
// 创建Timer对象
Timer timer = new Timer();
// 在指定时间点执行任务
timer.schedule(task, 5000); // 5秒后执行任务
// 在指定延迟时间后执行任务,并以指定时间间隔重复执行
// timer.schedule(task, 5000, 1000); // 5秒后开始执行任务,之后每隔1秒重复执行任务
// 取消定时任务
// task.cancel();
// 终止Timer对象
// timer.cancel();
}
}
上述代码中,首先定义了一个继承自TimerTask的MyTimerTask类,并重写了其run()方法,run()方法中打印了一条信息。然后,在main()方法中创建了一个MyTimerTask对象task,并创建了一个Timer对象timer。
通过timer.schedule(task, 5000)方法,将task与5秒后的时间点关联起来,即5秒后执行任务。如果需要重复执行任务,可以使用timer.schedule(task, 5000, 1000)方法,其中的5000表示5秒后开始执行任务,1000表示每隔1秒重复执行任务。
最后,可以通过task.cancel()方法取消定时任务,通过timer.cancel()方法终止Timer对象的运行
原文地址: https://www.cveoy.top/t/topic/hMbN 著作权归作者所有。请勿转载和采集!