java关于Timer schedule执行定时任务

来源:互联网 发布:p2p网络摄像机客户端 编辑:程序博客网 时间:2024/06/11 19:44

公司技术人员在实现内部办公系统与外部网站一体化的时候,最重要的步骤就是从oa系统读取数据,并且根据网站模板生成最终的静态页面。这里就需要一个定时任务,循环的执行。

技术人员在写定时任务的时候,想当然的以为timer.schedule(timertask task, long delay)就是重复的执行task。程序运行后发现只运行了一次,总觉得是task里的代码有问题,花了很长时间调试代码都没有结果。

仔细研读java api,发现:

schedule(timertask task, long delay)的注释:schedules the specified task for execution after the specified delay。大意是在延时delay毫秒后执行task。并没有提到重复执行

schedule(timertask task, long delay, long period)的注释:schedules the specified task for repeated fixed-delay execution, beginning after the specified delay。大意是在延时delay毫秒后重复的执行task,周期是period毫秒。

这样问题就很明确schedule(timertask task, long delay)只执行一次,schedule(timertask task, long delay, long period)才是重复的执行。关键的问题在于程序员误以为schedule就是重复的执行,而没有仔细的研究api,一方面也是英文能力不够,浏览api的过程中不能很快的理解到含义。


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
原创粉丝点击