Java Timer与TimerTask类使程序计时执行

Java 程序设计 Timer&TimerTask类

Timer&TimerTask类

根据设定的时间安排实现程序任务的自动执行

每一个调度任务类都需要继承java.util.TimerTask父类,任务的启动需要通过java.util.Timer类完成

TimerTask类常用方法

方法 作用
public void cancel() 终止任务
public void run() 任务需要执行的具体操作
public long scheduleExecutionTime() 返回最近一次要执行该任务的时间

Timer类常用方法

方法 作用
public Timer() 创建一个计时器并启动该计时器
public void cancel() 用来终止该计时器,并放弃所以已安排的任务,对当前正在执行的任务没有影响
public int purge() 将所有已经取消的任务移除,用来释放内存空间
public void schedule(TimerTask task,Date time) 安排一个任务在指定的时间执行,如果已经超过该时间,立即执行
public void schedule(TimerTask task,Date firstTime,long period) 安排一个任务在指定的时间执行,之后以固定的频率重复执行
public void schedule(TimerTask task,long delay) 安排一个任务在一段时间后执行
public void schedule(TimerTask task,long delay,long period) 安排一个任务在一段时间后执行,之后以固定的频率重复执行
public void schedule AtFixedRate(TimerTask task,Date firstTime,long period) 安排一个任务在指定的时间执行,之后以近似固定的频率重复执行
public void schedule AtFixedRate(TimerTask task,long delay,long period) 安排一个任务在一段时间后执行,之后以近似固定的频率重复执行

schedule()方法的执行时间间隔永远是固定的,如果之前出现了延迟的情况,之后也会继续按照设定好的间隔时间来执行。

scheduleAtFixedRate()方法可以根据出现的延迟时间自动调整下一次间隔的执行时间。

演示:

import java.util.Timer;
import java.util.TimerTask;

class Test extends TimerTask{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName()+"时间:"+System.currentTimeMillis());
    }
}
public class Hello {
    public static void main(String[] args) {
        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new Test(),100,1000);
    }
}

timer.scheduleAtFixedRate(new Test(),100,1000);

定义间隔任务,100毫秒后开始执行,每间隔1秒执行1秒

到此这篇关于Java Timer与TimerTask类使程序计时执行 的文章就介绍到这了,更多相关Java Timer 内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 解析Java中的Timer和TimerTask在Android中的用法和实例

    在开发中我们有时会有这样的需求,即在固定的每隔一段时间执行某一个任务.比如UI上的控件需要随着时间改变,我们可以使用Java为我们提供的计时器的工具类,即Timer和TimerTask. Timer是一个普通的类,其中有几个重要的方法:而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象,然后使用这对象的schedule方法来完成这种间隔的操作. schedule方法有三个参数 第一个参数就是TimerTask类型的对象

  • Java 定时器(Timer,TimerTask)详解及实例代码

     Java 定时器 在JAVA中实现定时器功能要用的二个类是Timer,TimerTask Timer类是用来执行任务的类,它接受一个TimerTask做参数 Timer有两种执行任务的模式,最常用的是schedule,它可以以两种方式执行任务:1:在某个时间(Data),2:在某个固定的时间之后(int delay).这两种方式都可以指定任务执行的频率,本文有二个例子,一个是简单的一个是用了内部类 1.简单实例 先写一个类 public class TimeTest { public stat

  • 详解JAVA Timer和TimerTask

    Timer和TimerTask可以做为实现线程的第三种方式,前两中方式分别是继承自Thread类和实现Runnable接口. Timer是一种线程设施,用于安排以后在后台线程中执行的任务.可安排任务执行一次,或者定期重复执行,可以看成一个定时器,可以调度TimerTask.TimerTask是一个抽象类,实现了Runnable接口,所以具备了多线程的能力. 一个Timer可以调度任意多个TimerTask,它会将TimerTask存储在一个队列中,顺序调度,如果想两个TimerTask并发执行,

  • java使用TimerTask定时器获取指定网络数据

    复制代码 代码如下: import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.URL;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Timer;import java.util.TimerTask; public class GetYinInf

  • Java 中Timer和TimerTask 定时器和定时任务使用的例子

    这两个类使用起来非常方便,可以完成我们对定时器的绝大多数需求 Timer类是用来执行任务的类,它接受一个TimerTask做参数 Timer有两种执行任务的模式,最常用的是schedule,它可以以两种方式执行任务:1:在某个时间(Data),2:在某个固定的时间之后(int delay).这两种方式都可以指定任务执行的频率 TimerTest.Java: package com.cn; import java.io.IOException; import java.util.Timer; pu

  • JAVA开发常用类库UUID、Optional、ThreadLocal、TimerTask、Base64使用方法与实例详解

    1.UUID类库 UUID 根据时间戳实现自动无重复字符串定义 // 获取UUID public static UUID randomUUID() // 根据字符串获取UUID public static UUID fromString(String name) 应用:对文件进行自动命名处理 import java.util.UUID; class Demo { public static void main(String[] args) { System.out.println(UUID.ra

  • java定时任务Timer和TimerTask使用详解

    timer和timertask是jdk自带的定时任务实现,无需导入第三方jar包来完成 1.指定多久之后执行此任务,注意:只会执行一次 public class TimerTest { Timer timer; public TimerTest(int time){ timer = new Timer(); timer.schedule(new timerTaskTest(),time*1000);//timer.schedule(执行的方法,延迟多久执行(ms)) } public stati

  • java之Timer和TimerTask简单demo(分享)

    代码:测试类 public class MyTestTimer { public static Timer mTimer; public static void main(String[] args) { mTimer=new Timer(); MyTimerTask testTimer=new MyTimerTask(10000); mTimer.schedule(testTimer, 10000); } } TimerTask任务类 public class MyTimerTask exte

  • Java Timer与TimerTask类使程序计时执行

    Java 程序设计 Timer&TimerTask类 Timer&TimerTask类 根据设定的时间安排实现程序任务的自动执行 每一个调度任务类都需要继承java.util.TimerTask父类,任务的启动需要通过java.util.Timer类完成 TimerTask类常用方法 方法 作用 public void cancel() 终止任务 public void run() 任务需要执行的具体操作 public long scheduleExecutionTime() 返回最近一次

  • java Timer测试定时调用及固定时间执行代码示例

    本文实例主要进行java Timer(定时调用.固定时间执行)测试,具体实现代码如下. 测试1 当任务执行时间小于重复执行的间隔时间 代码: public class TimerTest2 { public static void main(String[] args) throws InterruptedException { Timer timer = new Timer(); timer.schedule(new MyTask(0), 1000, 10000); //timer.sched

  • .NET使用System.Timers.Timer类实现程序定时执行

    在C#里关于定时器类有3个:System.Windows.Forms.Timer类.System.Threading.Timer类和System.Timers.Timer类. System.Windows.Forms.Timer是应用于WinForm中的,它是通过Windows消息机制实现的,类似于VB或Delphi中的Timer控件,内部使用API  SetTimer实现的.它的主要缺点是计时不精确,而且必须有消息循环,Console  Application(控制台应用程序)无法使用. Sy

  • java高并发ThreadPoolExecutor类解析线程池执行流程

    目录 摘要 核心逻辑概述 execute(Runnable)方法 addWorker(Runnable, boolean)方法 addWorkerFailed(Worker)方法 拒绝策略 摘要 ThreadPoolExecutor是Java线程池中最核心的类之一,它能够保证线程池按照正常的业务逻辑执行任务,并通过原子方式更新线程池每个阶段的状态. 今天,我们通过ThreadPoolExecutor类的源码深度解析线程池执行任务的核心流程,小伙伴们最好是打开IDEA,按照冰河说的步骤,调试下Th

  • Java定时任务:利用java Timer类实现定时执行任务的功能

    一.概述 在java中实现定时执行任务的功能,主要用到两个类,Timer和TimerTask类.其中Timer是用来在一个后台线程按指定的计划来执行指定的任务. TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务,具体要执行的代码写在TimerTask需要被实现的run方法中. 二.先看一个最简单的例子 我们通过代码来说明 import java.text.SimpleDateFormat; import java.util.Date; import java.util.T

  • 深入了解Java核心类库--Math类

    目录 Java常用类库Math 一.Field Summary 二.Method Summary 2.1 常用方法 2.1.1 部分方法源码 2.2 算数运算 2.3 三角函数 2.4 其他不常用方法 总结 Java常用类库Math 类Math包含用于执行基本数字运算的方法,例如基本指数,对数,平方根和三角函数 一.Field Summary Modifier and Type Field Description static double E 自然对数的基数 static double PI

随机推荐