java 定时器Timer和TimerTask的使用详解(执行和暂停)

 更新时间:2023年11月09日 11:54:35   作者:唯丹之心  
这篇文章主要介绍了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语法基础之for语句练习

    Java语法基础之for语句练习

    以下是对Java语法基础中的for语句进行了详细介绍,需要的朋友可以过来参考下
    2013-07-07
  • 解决Feign调用的GET参数传递的问题

    解决Feign调用的GET参数传递的问题

    这篇文章主要介绍了解决Feign调用的GET参数传递的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • java报错之springboot3+vue2项目web服务层报错总结

    java报错之springboot3+vue2项目web服务层报错总结

    java入门学习,随手记录一下开发过程中产生的报错,有些错误是网上搜索再加上自己尝试,随手引用了一些其他人的记录,也是留给自己看的,或是希望能对其他初学者有帮助

    2023-06-06
  • java使用spring实现读写分离的示例代码

    java使用spring实现读写分离的示例代码

    本篇文章主要介绍了java使用spring实现读写分离的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • SpringBoot的@GetMapping路径匹配规则、国际化详细教程

    SpringBoot的@GetMapping路径匹配规则、国际化详细教程

    这篇文章主要介绍了SpringBoot的@GetMapping路径匹配规则、国际化,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • SpringBoot实现日志链路追踪的项目实践

    SpringBoot实现日志链路追踪的项目实践

    在分布式系统中,由于请求的处理过程可能会跨越多个服务,因此,对请求的追踪变得尤为重要,本文主要介绍了SpringBoot实现日志链路追踪的项目实践,感兴趣的可以了解一下
    2024-03-03
  • 在SpringBoot中定义和读取自定义配置的方法步骤

    在SpringBoot中定义和读取自定义配置的方法步骤

    在Spring Boot中定义和读取自定义配置是日常开发中常见的需求,它允许我们以灵活的方式管理应用的配置信息,无论是通过外部配置文件还是通过环境变量,本文是一个详细的步骤说明,包括示例代码,需要的朋友可以参考下
    2024-10-10
  • Spring 数据库连接池(JDBC)详解

    Spring 数据库连接池(JDBC)详解

    本篇文章主要介绍了基于Spring的JDBC基本框架搭建;基于Spring的JDBC增删改查;读取配置文件中的数据等,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-05-05
  • 什么是Base64以及在Java中如何使用Base64编码

    什么是Base64以及在Java中如何使用Base64编码

    这篇文章主要介绍了什么是Base64以及在Java中如何使用Base64编码的相关资料,文中包括Base64编码的基本原理、应用、Java实现、URL安全编码以及在JavaScript中的使用方法,需要的朋友可以参考下
    2024-12-12
  • Java的Tomcat和Servlet的运行原理详解

    Java的Tomcat和Servlet的运行原理详解

    这篇文章主要为大家详细介绍了Java的Tomcat和Servlet,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03

最新评论