定时器篇---java.util.TimerTask和quartz】的更多相关文章

最近项目中出现了定时执行任务的东西,研究了一下,觉得挺不错的,以后还用得到,就总结了下. 这里只介绍两种java.util.Timer 和 quartz java.util.Timer java自带的工具类,线程用其安排以后在后台线程中执行的任务.可安排任务执行一次,或者定期重复执行,与java.util.TimerTask一起使用,容易使用.示例代码如下: import java.util.Timer; import java.util.TimerTask; public class tes…
本文为张孝祥java并发课程的学习笔记. java.util.Timer定时器,实际上是个线程,定时调度所拥有的TimerTasks. 一个TimerTask实际上就是一个拥有run方法的类,需要定时执行的代码放到run方法体内,TimerTask一般是以匿名类的方式创建. 我们看看看Timer的api文档 它拥有以下的几个方法 cancel,取消任务 purge,移除已经取消的任务 schedule(TimerTask task, long delay) delay毫秒后执行task任务. 再…
package timer; import java.util.Date; import java.util.Timer; import java.util.TimerTask; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /*2015-10-29*/ public class JDKTimer { private static final Logger LOGGER = LoggerFactory.getLogger(JDK…
在web中实现任务计划,相当于实现闹钟的功能,要完成2个步骤: 1.定时器的设置: 2.对这个定时器的启动运行和停止进行实时监听 java.util.Timer定时器,实际上是个线程,定时调度所拥有的TimerTasks 一个TimerTask实际上就是一个拥有run方法的类,需要定时执行的代码放到run方法体内,TimerTask一般是以匿名类方式创建. Timer是一种线程设施,用于安排以后在后台线程执行的任务,可安排任务执行一次,或者定期重复执行,可以看成一个定时器,可调度TimerTas…
这两个类使用起来非常方便,可以完成我们对定时器的绝大多数需求 Timer类是用来执行任务的类,它接受一个TimerTask做参数 Timer有两种执行任务的模式,最常用的是schedule,它可以以两种方式执行任务:1:在某个时间(Data),2:在某个固定的时间之后(int delay).这两种方式都可以指定任务执行的频率 TimerTest.java: package com.cn; import java.io.IOException; import java.util.Timer; pu…
schedule的意思(时间表.进度表) timer.schedule(new TimerTask(){ void run()},0, 60*60*1000);timer.schedule(new MyTask(event.getServletContext()), 0, 60*60*1000);第一个参数"new MyTask(event.getServletContext())":是 TimerTask 类,在包:import java.util.TimerTask .使用者要继承…
在未来某个指定的时间点或者经过一段时间延迟后执行某个事件,这时候就需要用到定时器了.定时器的实现方式有很多种,今天总结最简单的实现方式.java 1.3引入了定时器框架,用于在定时器上下文中控制线程的执行,其由类Timer和TimerTask构成.Timer适用于大规模并发调度定时任务,在内部,该类使用二进制的堆表示其定时任务队列. 通过继承TimerTask或者创建匿名类的方式重写run()方法,创建一个定时任务,通过将其作为第一个参数调用Timer得schedule()方法,实现定时器. i…
概述  软件包  类  使用   树  已过时  索引  帮助  JavaTM Platform Standard Ed. 6  上一个   下一个 框架    无框架    所有类         <a href="../../allclasses-noframe.html"><b>所有类</b>&…
任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务. 举个例子,比如说我们希望一个系统每周日晚上9点都将数据库文件备份一次,这时我们就可以使用任务调度来实现.为了更加的方便,我们需要在tomcat启动后,自动开始这个调度. 下面是TimerTask的API: 下面是Timer类的API 下面的例子中实现了两个功能: 1.监测tomcat的web容器的启动与关闭 2.当web容器启动后,任务调度分配任务对象,时间和周期. 为了监测web容器的变化,首先需要在web.xml中注册监…
在java中,Timer类主要用于定时性.周期性任务 的触发,这个类中有两个方法比较难理解,那就是schedule和scheduleAtFixedRate方法,在这里就用实例分析一下. (1)schedule方法:“fixed-delay”:如果第一次执行时间被delay了,随后的执行时间按照上一次实际执行完成的时间点 进行计算(2)scheduleAtFixedRate方法:“fixed-rate”:如果第一次执行时间被delay了,随后的执行时间按照上一次开始的时间点 进行计算,并且为了”c…