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

网友投稿 279 2022-08-29


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 schhttp://edule(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

http:// 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秒


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:接口调用是什么意思?几种常用接口调用方式
下一篇:Python把对应格式的csv文件转换成字典类型存储脚本(python将data文件转换为csv文件)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~