Java Timer定时器执行任务
2012-05-15 11:40
549 查看
package com.timerTools; import java.util.Date; import java.util.Timer; import java.util.TimerTask; public class TestTimer { Timer timer = new Timer(); /** * 定时器任务制定,执行 * @param tag: 0.在指定的时间里,执行指定的任务; * 1.在指定的时间里,按照指定的延迟,重复执行指定任务; * 2.从指定的延迟后,执行指定任务; * 3.从指定的延迟后,按照指定的延迟,重复执行指定的任务。 * * @param mydate:指定的执行时间。只有在tag等于0、1才需要指定。 * @param delay: 延迟执行时间,毫秒数。只有在tag等于1、3才需要指定。 * @param period:间隔执行时间,毫秒数。只有在tag等于4才需要指定。 */ public void executeTask(int tag, Date mydate,long delay, long period) { if(tag == 0){ timer.schedule(new DefineTimerTask(), mydate); }else if(tag == 1){ timer.schedule(new DefineTimerTask(), mydate, period); }else if(tag == 2){ timer.schedule(new DefineTimerTask(),delay); }else if(tag == 3){ timer.schedule(new DefineTimerTask(),delay,period); }else{ System.out.println("Error:输入的定时器参数无效!"); } } /** * 执行的定时器任务 */ private class DefineTimerTask extends TimerTask { //执行的次数 int count = 0; public void run() { System.out.println("执行定时任务 " + count); count ++; //执行第10次时取消任务 //if (count == 10) { //timer.cancel(); //} } } //定时器,执行任务测试 public static void main(String[] args) { new TestTimer().executeTask(2,null,1000,1000); new TestTimer().executeTask(3,null,1000,1000); } }
package com.timerTools;import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TestTimer { Timer timer = new Timer(); /** * 定时器任务制定,执行 * @param tag: 0.在指定的时间里,执行指定的任务; * 1.在指定的时间里,按照指定的延迟,重复执行指定任务; * 2.从指定的延迟后,执行指定任务; * 3.从指定的延迟后,按照指定的延迟,重复执行指定的任务。
* * @param mydate:指定的执行时间。只有在tag等于0、1才需要指定。 * @param delay: 延迟执行时间,毫秒数。只有在tag等于1、3才需要指定。 * @param period:间隔执行时间,毫秒数。只有在tag等于4才需要指定。 */ public void executeTask(int tag, Date mydate,long delay, long period) { if(tag == 0){ timer.schedule(new DefineTimerTask(),
mydate); }else if(tag == 1){ timer.schedule(new DefineTimerTask(), mydate, period); }else if(tag == 2){ timer.schedule(new DefineTimerTask(),delay); }else if(tag == 3){ timer.schedule(new DefineTimerTask(),delay,period); }else{ System.out.println("Error:输入的定时器参数无效!");
} } /** * 执行的定时器任务 */ private class DefineTimerTask extends TimerTask { //执行的次数 int count = 0; public void run() { System.out.println("执行定时任务 " + count); count ++; //执行第10次时取消任务 //if (count == 10) { //timer.cancel(); //} } } //定时器,执行任务测试 public static void
main(String[] args) { new TestTimer().executeTask(2,null,1000,1000); new TestTimer().executeTask(3,null,1000,1000); } }
相关文章推荐
- 关于Java Web 使用Java的TimerTask, 触发定时器(执行某些任务)的实例
- Java Timer定时器时,每次重复执行了两次任务的解决方案
- Java中周期性任务执行--Timer
- java的Timer,定时执行某个任务
- Java定时器周期执行任务的例子
- Java 定时器的使用:每天定时执行任务
- java关于Timer schedule执行定时任务
- Java定时器(实现每月1号、每日、每15分钟自动执行任务)
- java定时执行任务--Timer的使用
- java关于Timer schedule执行定时任务
- Java 中Timer和TimerTask 定时器和定时任务使用的例子
- java关于Timer schedule执行定时任务
- Java:利用java Timer类实现定时执行任务的功能
- Java 中Timer和TimerTask 定时器和定时任务使用的例子
- java 定时器,固定某个时间执行(Spring+Quartz实现定时任务的配置方法)
- java中计时器的用法Timer和TimerTask的用法__java中利用Timer与TImerTask 计时器间隔执行任务
- java 中 Timer 定时执行任务
- java学习—— Timer执行定时任务
- Java 定时器的使用:每天定时执行任务
- java关于Timer schedule执行定时任务 1、在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等