java 每间隔一段时间执行一段代码

时间:2022-07-15 17:07:34

Java中java.util.Timer类中有若干个schedule的重载方法,其中

  void schedule(TimerTask task, long delay, long period )

安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。以近似固定的时间间隔(由指定的周期分隔)进行后续执行。

参数:

   task - 所要安排的任务。

   delay - 执行任务前的延迟时间,单位是毫秒。

   period - 执行各后续任务之间的时间间隔,单位是毫秒。

抛出:

  IllegalArgumentException - 如果 delay 是负数,或者 delay + System.currentTimeMillis() 是负数。

  IllegalStateException - 如果已经安排或取消了任务,已经取消了计时器,或者计时器线程已终止。

搭配TimerTask抽象类完成。

ps:

  Timer()   // 创建一个新计时器。相关的线程不 作为守护程序运行。

  Timer(boolean isDaemon)  //创建一个新计时器,可以指定其相关的线程作为守护程序运行。

  Timer(String name)    //创建一个新计时器,其相关的线程具有指定的名称。

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