schedule

更新时间:2022-12-26 14:50:06 阅读: 评论:0


2022年12月26日发(作者:乔佛里)

Java中Timer的schedule()⽅法参数详解

le(newMyTask(),longtime1,longtimer2);

今天算是彻底的搞懂了这个曾经让我为之头疼的⽅法。下⾯我就重点介绍⼀下:

第⼀个参数,是TimerTask类,在包:ask.使⽤者要继承该类,并实现publicvoidrun()⽅法,

因为TimerTask类实现了Runnable接⼝。

第⼆个参数的意思是,当你调⽤该⽅法后,该⽅法必然会调⽤TimerTask类TimerTask类中的run()⽅法,这个参数就

是这两者之间的差值,转换成汉语的意思就是说,⽤户调⽤schedule()⽅法后,要等待这么长的时间才可以第⼀次执⾏

run()⽅法。

第三个参数的意思就是,第⼀次调⽤之后,从第⼆次开始每隔多长的时间调⽤⼀次run()⽅法。

附:

技术⼈员在实现内部办公系统与外部⽹站⼀体化的时候,最重要的步骤就是从OA系统读取数据,并且根据⽹站模板⽣成

最终的静态页⾯。这⾥就需要⼀个定时任务,循环的执⾏。

技术⼈员在写定时任务的时候,想当然的以为le(TimerTasktask,longdelay)就是重复的执⾏task。程序运⾏后发现

只运⾏了⼀次,总觉得是task⾥的代码有问题,花了很长时间调试代码都没有结果。

仔细研读javaapi,发现:

schedule(TimerTasktask,longdelay)的注释:Schedulesthespecifiedtaskforexecutionafterthespecifieddelay。⼤意是在延

时delay毫秒后执⾏task。并没有提到重复执⾏

schedule(TimerTasktask,longdelay,longperiod)的注释:Schedulesthespecifiedtaskforrepeatedfixed-delayexecution,

beginningafterthespecifieddelay。⼤意是在延时delay毫秒后重复的执⾏task,周期是period毫秒。

这样问题就很明确schedule(TimerTasktask,longdelay)只执⾏⼀次,schedule(TimerTasktask,longdelay,longperiod)才是重复的执

⾏。关键的问题在于程序员误以为schedule就是重复的执⾏,⽽没有仔细的研究API,⼀⽅⾯也是英⽂能⼒不够,浏览API的

过程中不能很快的理解到含义。

总结

以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作具有⼀定的参考学习价值,谢谢⼤家对的⽀持。如果

你想了解更多相关内容请查看下⾯相关链接

本文发布于:2022-12-26 14:50:06,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/34292.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:opposite
标签:schedule
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图