java 定时器Timer和TimerTask的使用详解(执行和暂停)
1:java.util.Timer定时器的常用方法如下:
- schedule(TimerTask task, long delay) // 延迟delay毫秒后,执行一次task。
- schedule(TimerTask task, long delay, long period) // 延迟delay毫秒后,执行第一次task,然后每隔period毫秒 执行一次
2:参数含义: 第一个参数:
是 TimerTask 类,在包:import java.util.TimerTask .使用者要继承该类,并实现 public void run() 方法,因为 TimerTask 类 实现了 Runnable 接口。
第二个参数:
当你调用该方法后,该方法必然会调用 TimerTask 类 TimerTask 类 中的 run() 方法,这个参数就是这两者之间的差值,转换成汉语的意思就是说,用户调用 schedule() 方后,要等待这么长的时间才可以第一次执行 run() 方法。
第三个参数:
第一次调用之后,从第二次开始每隔多长的时间调用一次 run() 方法。
3.暂停任务:
cancle(); 调用该方法;
4.例子:
public static void main(String[] args){ Timer time = new Timer(); time.schedule(new MyTask(),1*1000); //1秒后执行,到第6秒的时候暂停 }
//执行的类需要继承TimerTask,需要重写run方法,要执行的操作写在run方法里 public class MyTask extends TimerTask { private static Integer time = 0; @Override public void run(){ System.out.println("执行定时任务第几次:"+time++); try{ if(6 == time) cancel(); }catch(Exception e){ e.printStackTrace(); } } }
运行结果:
到此这篇关于java 定时器Timer和TimerTask的详解(执行和暂停)的文章就介绍到这了,更多相关java 定时器Timer和TimerTask内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
java报错之springboot3+vue2项目web服务层报错总结
java入门学习,随手记录一下开发过程中产生的报错,有些错误是网上搜索再加上自己尝试,随手引用了一些其他人的记录,也是留给自己看的,或是希望能对其他初学者有帮助2023-06-06SpringBoot的@GetMapping路径匹配规则、国际化详细教程
这篇文章主要介绍了SpringBoot的@GetMapping路径匹配规则、国际化,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧2023-11-11
最新评论