【Java常用类库】_定时调度笔记
2013-01-29 15:21
253 查看
【Java常用类库】_定时调度笔记
本章目标:
了解定时调度的作用。
掌握Timer和TimerTask类的作用
3、具体内容
定时调度,每当一端时间,程序会自动执行,称为定时调度。
如果要使用定时调度,则必须保证程序始终运行着才可以,也就是说是相当于定时调度是在程序之外又启动了一个新的线程!
Timer和TimeTask两个类完成定时调度。
Timer类
Timer类是一种线程设施,可以用来实现某一个时间或某一段时间后,安排某一个任务执行一次,或定期重复执行。该功能要与TimerTask配合使用。TimerTask类用来实现由Timer安排的一次或重复执行的某一个任务。
每一个Timer对象对应是的一个线程,因此计时器所执行的任务应该迅速完成,否则可能会延迟后续任务的执行,而这些后续的任务就有可能堆在一起,等到该任务完成后才能快速连续执行。
schedule()与scheduleAtFixedRate()方法的区别
两者的区别在与重复执行任务时,对于时间间隔出现延迟的情况处理:
schedule()方法的执行时间间隔永远是固定的,如果之前出现了延迟的情况,之后也会继续按照设定好的间隔时间来执行。
scheduleAtFixedRate()方法可以根据出现的延迟时间自动调整下一次间隔的执行时间。
实例代码(间隔一段时间打印当前时间) :
// 完成具体的任务操作
本章目标:
了解定时调度的作用。
掌握Timer和TimerTask类的作用
3、具体内容
定时调度,每当一端时间,程序会自动执行,称为定时调度。
如果要使用定时调度,则必须保证程序始终运行着才可以,也就是说是相当于定时调度是在程序之外又启动了一个新的线程!
Timer和TimeTask两个类完成定时调度。
Timer类
Timer类是一种线程设施,可以用来实现某一个时间或某一段时间后,安排某一个任务执行一次,或定期重复执行。该功能要与TimerTask配合使用。TimerTask类用来实现由Timer安排的一次或重复执行的某一个任务。
每一个Timer对象对应是的一个线程,因此计时器所执行的任务应该迅速完成,否则可能会延迟后续任务的执行,而这些后续的任务就有可能堆在一起,等到该任务完成后才能快速连续执行。
schedule()与scheduleAtFixedRate()方法的区别
两者的区别在与重复执行任务时,对于时间间隔出现延迟的情况处理:
schedule()方法的执行时间间隔永远是固定的,如果之前出现了延迟的情况,之后也会继续按照设定好的间隔时间来执行。
scheduleAtFixedRate()方法可以根据出现的延迟时间自动调整下一次间隔的执行时间。
实例代码(间隔一段时间打印当前时间) :
// 完成具体的任务操作
import java.util.TimerTask ; import java.util.Date ; import java.text.SimpleDateFormat ; class MyTask extends TimerTask{ // 任务调度类都要继承TimerTask public void run(){ SimpleDateFormat sdf = null ; sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") ; System.out.println("当前系统时间为:" + sdf.format(new Date())) ; } };
import java.util.Timer ; public class TestTask{ public static void main(String args[]){ Timer t = new Timer() ; // 建立Timer类对象 MyTask mytask = new MyTask() ; // 定义任务 t.schedule(mytask,1000,2000) ; // 设置任务的执行,1秒后开始,每2秒重复 } };
相关文章推荐
- 11. JAVA常用类库 Part 5 (正则表达式、定时调度、本章要点) ----- 学习笔记
- 【Java常用类库】_定时调度笔记
- java常用类库---定时调度
- Java常用类库--定时调度(Timer、TimerTask)
- java常用类库续3(比较器Comparable、Comparator、观察者设计模式、正则表达式、定时调度)
- Java 常用类库——定时调度
- Java常用类库——定时调度(Timer、TimerTask)
- 【Java常用类库】_Arrays笔记
- 11.11-全栈Java笔记:线程状态转换和任务定时调度
- Java学习笔记(十五)网络编程及常用类库
- 【Java常用类库】_Arrays笔记
- 11. JAVA常用类库 Part 1 (StringBuffer、Runtime、国际化程序) ----- 学习笔记
- 【Java常用类库】_对象克隆技术笔记
- 【Java常用类库】_观察者设计模式笔记
- 黑马程序员——JAVA学习整理笔记——常用类库
- 【Java常用类库】_比较器(Comparable、Comparator)笔记
- 【Java常用类库】_Arrays笔记
- 【Java常用类库】_正则表达式笔记
- 【Java常用类库】_日期操作类(Date、Calendar)笔记
- 【Java常用类库】_正则表达式笔记