标签:最简 exit OLE 控制线 守护线程 long inline div 调度
在未来某个指定的时间点或者经过一段时间延迟后执行某个事件,这时候就需要用到定时器了。定时器的实现方式有很多种,今天总结最简单的实现方式。java 1.3引入了定时器框架,用于在定时器上下文中控制线程的执行,其由类Timer和TimerTask构成。Timer适用于大规模并发调度定时任务,在内部,该类使用二进制的堆表示其定时任务队列。
通过继承TimerTask或者创建匿名类的方式重写run()方法,创建一个定时任务,通过将其作为第一个参数调用Timer得schedule()方法,实现定时器。
import java.util.Timer; import java.util.TimerTask; public class TimerDemo { // 通过创建匿名类方式实现 public static void main(String[] args) { // 首先初始化一个TimerTask的匿名子类 TimerTask task = new TimerTask() {
@Override public void run() { System.out.println("开始执行"); //退出程序返回最上层,0表示正常退出程序,非0表示非正常退出程序 System.exit(0); } }; //通过Timer调用 Timer timer = new Timer(); timer.schedule(task, 2000); } }
Timer创建的定时器一般为非线程守护,如果想要创建守护线程需调用Timer(boolean isDaemon) 传递参数true给isDaemon。
Timer类声明的方法如下:
void scheduleAtFixedRate(TimerTask task, Date firstTime,long period) 调度任务于firstTime开始,以固定速率的方式重复执行,后续将大约period毫秒数的固定时间间隔执行。
标签:最简 exit OLE 控制线 守护线程 long inline div 调度
原文地址:https://www.cnblogs.com/Sweethoney/p/10486483.html