Java Timer(定时器)

概述:

    Timer是一种定时器工具,用来在一个后台线程计划执行指定任务。它可以安排任务“执行一次”或者定期“执行多次。                 
     然而在实际的开发过程当中,经常需要一些周期性的操作,比如每5分钟执行某一操作等。
     对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。

--------------------------------------------------------------------------------------------------------------

 方法摘要:

       schedule(TimerTask task, Date time) :    安排在 "指定的时间" 执行 指定的任务。(只执行一次)

      schedule(TimerTask task, Date firstTime , long period) :    安排指定的任务在 "指定的时间 " 开始进行 "重复" 的固定延迟执行.( )

      schedule(TimerTask task,long delay) :      安排在指定延迟后执行指定的任务.

      schedule(TimerTask task,long delay,long period):    安排指定的任务指定的延迟后开始进行重复的固定延迟执行.

      scheduleAtFixedRate(TimerTask task,Date firstTime,long period):    安排指定的任务在指定的时间开始进行重复的固定速率执行.

      scheduleAtFixedRate(TimerTask task,long delay,long period):    排指定的任务在指定的延迟后开始进行重复的固定速率执行.

      Timer.cancal():    终止此计时器,丢弃所有当前已安排的任务。

      Timer.purge():    从此计时器的任务队列中移除所有已取消的任务。

------------------------------------------------------------------------------------------------

    实例代码案例:

               1、 在指定的时间做某事(只做一次): schedule(TimerTask task, Date time) 

         源码案例如下:

       

        运行效果:

                

----------------------------------------------------------------------------------------------------------

            2、 安排在指定延迟后执行指定的任务:schedule(TimerTask task,long delay) 

    源码如下:

          

 

    运行效果:


-------------------------------------------------------------------------------------------------------

            3、安排指定的任务在“指定的延迟”后开始进行“重复”的固定延迟执行:

                                                                        schedule(TimerTask task,long delay,long period):    

     源码如下:

                

            

      运行效果:

                      

-------------------------------------------------------------------------------------------

在这里就主要讲解常用的以上三个方法,其他的方法都是差不多的;

-------------------------------------------------------------------------------------------

扩展:

    在实际的开发过程当中,用到的实际比较少;一般都会使用
“Quartz”是一个完全由Java 编写的开源调度框架。

------------------------------------------------------------------------------------------

在最后,感谢大家看完这篇文章,希望该文章对大家有所帮助!

CSDN:https://mp.csdn.net/postlist

  • 30
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一行代码两块钱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值