首页 > 编程语言 > 详细

java 定时器中schedule方法解析

时间:2014-03-19 03:12:42      阅读:431      评论:0      收藏:0      [点我收藏+]

近期工作中接触到java的定时器,记下自己在使用schedule方法遇到的小问题,时刻提醒自己对待程序要认真再认真。

先写个小例子:

package Demo;
import java.util.Timer;
public class TimeTaskDemo {
   public static void main(String[] args){

      Timer timer = new Timer(); 
      timer.schedule(new Task(), 60 * 1000); // 60秒后执行Task类,只执行一次

      //timer.schedule(new Task(), 1000, 60*1000); //1秒后每隔60秒执行Task类,重复执行
    }
}

package Demo;

import java.util.TimerTask;
public class Task extends TimerTask {

 

   public void run()
  {
    System.out.println("添加你想要执行的任务");
  }

}

ps:笔者添加了定时器线程,本来想要添加的功能时1秒后重复执行Task类void schedule(TimerTask task, Date firstTime, long period),然而由于没有认真查看Schedule方法,匆忙选择了void schedule(TimerTask task, long delay),结果导致程序只在60秒后执行了一次Task方法。导致重新编码。

 

心得:越是时间紧,越是细节的东西,越要仔细查证。

 

Timer的构造方法如下:

  1. Timer() 创建一个新计时器。
  2. Timer(boolean isDaemon)创建一个新计时器,可以指定其相关的线程作为守护程序运行。
  3. Timer(String name)创建一个新计时器,其相关的线程具有指定的名称。
  4. Timer(String name, boolean isDaemon)创建一个新计时器,其相关的线程具有指定的名称,并且可以指定作为守护程序运。

Schedule重载方法如下:

  1. void schedule(TimerTask task, Date time)安排在指定的时间执行指定的任务。
  2. void schedule(TimerTask task, Date firstTime, long period)安排指定的任务在指定的时间开始进行重复的固定延迟执行
  3. void schedule(TimerTask task, long delay)安排在指定延迟后执行指定的任务。
  4. void schedule(TimerTask task, long delay, long period)安排指定的任务从指定的延迟后开始进行重复的固定延迟执行

java 定时器中schedule方法解析,布布扣,bubuko.com

java 定时器中schedule方法解析

原文:http://www.cnblogs.com/reborn2012/p/3608936.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!