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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
ConcurrentModificationException日志关键字报警思考分析
本文将记录和分析日志中的ConcurrentModificationException关键字报警,还有一些我的思考,有需要的朋友可以借鉴参考下,希望能够有所帮助2023-12-12
springboot yml配置文件使用@project.xxxx@启动报错Do not
这篇文章主要介绍了springboot yml配置文件使用@project.xxxx@启动报错Do not use @ for indentation问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-07-07
Spring的BeanFactoryPostProcessor接口示例代码详解
这篇文章主要介绍了Spring的BeanFactoryPostProcessor接口,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-02-02
Springboot公共字段填充及ThreadLocal模块改进方案
这篇文章主要为大家介绍了Springboot公共字段填充及ThreadLocal模块改进方案详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-11-11
SpringBoot读取自定义配置文件方式(properties,yaml)
这篇文章主要介绍了SpringBoot读取自定义配置文件方式(properties,yaml),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-07-07


最新评论