schedule() 和 scheduleAtFixedRate() 的区别--转载
1. schedule() ,2个参数方法:
在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行。
2. schedule() ,3个参数方法:
在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行,之后按period参数固定重复执行。
3. scheduleAtFixedRate() ,3个参数方法:
在执行任务时,如果指定的计划执行时间scheduledExecutionTime<= systemCurrentTime,则task会首先按执行一次;然后按照执行时间、系统当前时间和period参数计算出过期该执行的次数,计算按照: (systemCurrentTime-scheduledExecutionTime)/period,再次执行计算出的次数;最后按period参数固定重复执行。
4. schedule() 和scheduleAtFixedRate()
schedule()方法更注重保持间隔时间的稳定。
scheduleAtFixedRate()方法更注重保持执行频率的稳定。
package com.task;import java.util.Date; import java.util.Timer;public class TestTask {/*** @param args*/public static void main(String[] args){Date crtTime = new Date();long crt = crtTime.getTime();Timer timer = new Timer();// 在指定时间执行CommonTask task1 = new CommonTask("【任务一】"); timer.schedule(task1, new Date(crt - 1000));// schedule和scheduleAtFixedRate CommonTask task11 = new CommonTask("【任务二】"); timer.schedule(task11, new Date(crt - 10 * 1000),1000);CommonTask task12 = new CommonTask("【任务三】"); timer.schedule(task12, new Date(crt - 10 * 1000),1000);// schedule和scheduleAtFixedRate CommonTask task13 = new CommonTask("【任务四】"); timer.schedule(task13, new Date(crt + 2 * 1000),1000);CommonTask task14 = new CommonTask("【任务五】"); timer.scheduleAtFixedRate(task14, new Date(crt + 2 * 1000),1000);}}
原文地址:http://blog.163.com/nice_2012/blog/static/192666148201231635332934/
转载于:https://www.cnblogs.com/davidwang456/p/4290732.html
schedule() 和 scheduleAtFixedRate() 的区别--转载相关推荐
- Java定时任务之--schedule与scheduleAtFixedRate异同
相同点: 任务执行未超时,下次执行时间 = 上次执行开始时间 + period:任务执行超时,下次执行时间 = 上次执行结束时间:在任务执行未超时时,它们都是上次执行时间加上间隔时间,来执行下一次任务 ...
- Timer的schedule和scheduleAtFixedRate方法的区别解析(转)
在java中,Timer类主要用于定时性.周期性任务 的触发,这个类中有两个方法比较难理解,那就是schedule和scheduleAtFixedRate方法,在这里就用实例分析一下 (1)sched ...
- Timer的schedule和scheduleAtFixedRate方法的区别解析
在java中,Timer类主要用于 定时性.周期性任务的触发,这个类中有两个方法比较难理解,那就是schedule和scheduleAtFixedRate方法,在这里就用实例分析一下 (1)sched ...
- Timer的schedule和scheduleAtFixedRate区别
Timer的schedule和scheduleAtFixedRate个人理解. schedule的下次开始时间是根据结束时间来看的,你设置一个间隔2秒的任务,但是每个任务需要执行的时间需要5秒,他会判 ...
- java中timer类包_Java~util包中Timer的使用, 演示cancel方法 和 对比schedule和scheduleAtFixedRate方法...
Timer Timer类的主要作用就是设置计划任务,但封装任务的类却是TimerTask类 执行计划任务的代码要放人TimerTask的子类中,因为TimerTask是一个抽象类.而且要重写其run方 ...
- schedule与scheduleAtFixedRate比较
schedule与scheduleAtFixedRate: 不延时: schedule(TimerTask, Date runDate, long period)方法任务不延时----Date类型 1 ...
- .NET 的 WCF 和 WebService 有什么区别?(转载)
.NET 的 WCF 和 WebService 有什么区别?(转载) [0]问题: WCF与 Web Service的区别是什么? 和ASP.NET Web Service有什么关系? WCF与ASP ...
- postfix中recipient/client/sender/helo四者的区别转载
postfix在main.cf中用下面四个做限制,那么这四者到底有什么区别? smtpd_recipient_restrictions smtpd_client_restrictions smtpd_ ...
- schedule vs scheduleAtFixedRate
最好的方法是在两者之间区分 timer灵感时间设定过去时间T,scheduleAtFixedRate将从T现在所有的任务中运行,schedule而该任务将只运行从现在开始计时. public clas ...
最新文章
- python cookbook pdf下载-Python Cookbook 第3版 中文版.pdf
- 文件操作函数(读写)
- HTML基础知识点(1)
- 安川机器人位置变量要素_安川机器人变量分配(维修)
- Tiled编辑器不能打开.tmx文件的问题
- 如何做好一个流量站?
- QTableView 常用功能总结
- 《时代》评出50个最酷网站
- Java中PDF转WORD
- ubuntu 自带录屏功能
- 蚂蚁金服上市,程序员流下了激动的眼泪
- TCP/IP协议漏洞实验
- 开篇-开启全新的.NET现代应用开发体验
- 《研发企业管理——思想、方法、流程和工具》——第1章 企业管理基本理念 1.1 企业的根本目标及其内涵...
- c++ opencv 保存视频数据
- 选择计算机配件用户需求,买电脑都需要看什么?对电脑不太懂,配置什么的…...
- 政务服务一网通办建设方案(ppt)
- CHIL-SQL-快速参考
- 将网页内容截屏的好工具
- 世界上最难的视觉图_【若寒专栏】被喻为世界上最难的联赛——2019赛季日本J2联赛球队总结(7 完结)...
热门文章
- 违反了primarykey约束怎么解决_前期物业服务合同对主业有约束力吗?
- 数值分析 pdf_统计分析前,要做哪些数据准备工作?
- c 串转string_c++ 中 char 与 string 之间的相互转换问题
- java jframe 运行_java – 使用JProgressBar运行JFrame
- wps 模拟分析 规划求解_Excel数据分析两大利器,趋势预测与规划求解
- pandas中如何选取某几列_pandas 选取行和列数据的方法
- ios android 内存不足,怎样解决手机内存不足?iOS系统可以试试这些方法
- exit(0)什么意思php,php – 文件中的exit(1)导致脚本状态码为0
- mysql 基本操作(二)
- tf.split()