package cn.lonecloud.test;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask; /**
*
* @Title: Test02.java
* @Package cn.lonecloud.test
* @Description:
* @author lonecloud
* @date 2016年8月5日 下午4:43:29
*/
public class Test02 {
public static void main(String[] args) throws Exception{
timer3();
}
/**
* scheduleAtFixedRate
* 对于这个来说这里的时间是根据你的传入的时间来算
* 不管你是否线程休眠与否都要一开始执行
* @Description:
* @throws Exception
*/
public static void timer3() throws Exception{
Date date = new Date();
Timer timer = new Timer();
Thread.sleep(9000);
timer.scheduleAtFixedRate(new TimerTask() {
public void run() { System.out.println(new Date());
}
}, date, 1000);
}
/**
* 运行9秒后运行结果
* Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:41 CST 2016
Fri Aug 05 16:46:42 CST 2016
Fri Aug 05 16:46:43 CST 2016
Fri Aug 05 16:46:44 CST 2016
Fri Aug 05 16:46:45 CST 2016 */
}
package cn.lonecloud.test;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask; public class Test01 {
public static void main(String[] args)throws Exception {
timer2();
}
/**
* schedule
* 线程休眠9s后执行
* @Description:
* @throws Exception
*/
public static void timer2() throws Exception {
Date date = new Date();
System.out.println(date);
Timer timer = new Timer();
Thread.sleep(9000);
timer.schedule(new TimerTask() {
public void run() {
System.out.println(new Date());
}
}, date, 1000);
}
/**
* 结果:
* Fri Aug 05 16:48:56 CST 2016
Fri Aug 05 16:49:05 CST 2016
Fri Aug 05 16:49:06 CST 2016
Fri Aug 05 16:49:07 CST 2016
Fri Aug 05 16:49:08 CST 2016
Fri Aug 05 16:49:09 CST 2016
Fri Aug 05 16:49:10 CST 2016
*/
}

java定时器schedule和scheduleAtFixedRate区别的更多相关文章

  1. schedule和scheduleAtFixedRate区别

    需求: 由于系统长期运作,各设备之间产生很多信息,一段时间后需要清除数据 考虑方案: 用schedule还是scheduleAtFixedRate,在此比较分析了下这两个的区别 schedule和sc ...

  2. schedule() 和 scheduleAtFixedRate() 区别

    1.  schedule() ,2个参数方法:在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行. ...

  3. 简单理解java中timer的schedule和scheduleAtFixedRate方法的区别

    timer的schedule和scheduleAtFixedRate方法一般情况下是没什么区别的,只在某个情况出现时会有区别--当前任务没有来得及完成下次任务又交到手上. 我们来举个例子: 暑假到了老 ...

  4. schedule() 和 scheduleAtFixedRate() 的区别--转载

    1.  schedule() ,2个参数方法:在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行. ...

  5. Timer的schedule和scheduleAtFixedRate方法的区别解析(转)

    在java中,Timer类主要用于定时性.周期性任务 的触发,这个类中有两个方法比较难理解,那就是schedule和scheduleAtFixedRate方法,在这里就用实例分析一下 (1)sched ...

  6. Timer的schedule和scheduleAtFixedRate方法的区别解析

    在java中,Timer类主要用于定时性.周期性任务 的触发,这个类中有两个方法比较难理解,那就是schedule和scheduleAtFixedRate方法,在这里就用实例分析一下 (1)sched ...

  7. -1-5 java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁 sleep()和wait()方法的区别 为什么wait(),notify(),notifyAll()等方法都定义在Object类中

     本文关键词: java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁  sleep()和wait()方法的区别 为什么wait( ...

  8. Java定时器TimeTask

    package com.alan.timer; import java.util.Calendar;import java.util.Date;import java.util.Timer;impor ...

  9. java定时器和多线程实践记录

    这几天因为需要测试mongodb读写分离的问题,因此写了个定时查询程序,并且用到了多线程,以达到定时启动多个线程查询数据库的效果,下边代码记录备忘: package timmer; import ja ...

随机推荐

  1. JavaScript ES6 module 模块

    在使用JavaScript开发大型项目时,模块开发概念是一个必须考虑的问题.其目的就是通过命名空间对各类业务对象进行一定的封装,防止命名冲突. 本篇着重介绍ES6 module中的export和imp ...

  2. navicat的简单使用

    navicat的简单使用: 连接: 输入ip地址,端口,用户名,密码 新建数据库: 数据库名,字符编码一定要选择utf-8 新建表: 字段,约束条件 双击表名,自己打开表,点击空列,添加数据,ctl+ ...

  3. MS SQL 日志记录管理

    MS SQL的日志信息/日志记录,可能对你来说,既熟悉又陌生,熟悉是因为你可能一直都在使用,查看.关注一些日志信息/记录,例如,作业历史记录:陌生是因为你可能从不关注日志信息/记录的管理,这里我一直用 ...

  4. MySQL之SELECT用法

    主要是为了搞定一个select语句,因为语法比较奇怪,没看懂,百度了一些结果 select的东西相当于一个临时表,as就给这临时表取个名字. SELECT语句的完整语法SELECT语句的完整语法为: ...

  5. python 调用 R,使用rpy2

    python 与 R 是当今数据分析的两大主流语言.作为一个统计系的学生,我最早接触的是R,后来才接触的python.python是通用编程语言,科学计算.数据分析是其重要的组成部分,但并非全部:而R ...

  6. ABP框架源码学习之修改默认数据库表前缀或表名称

    ABP框架源码学习之修改默认数据库表前缀或表名称 1,源码 namespace Abp.Zero.EntityFramework { /// <summary> /// Extension ...

  7. 【C++】bazel的使用

    bazel的使用 bazel是google开源的构建工具,可以支持多种语言的构建.这里来尝试一下如何在C++项目中使用bazel构建. 安装就不介绍了,在官网很详细,输入bazel --help: U ...

  8. [DeeplearningAI笔记]ML strategy_1_3可避免误差与改善模型方法

    机器学习策略 ML strategy 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.8 为什么是人的表现 今天,机器学习算法可以与人类水平的表现性能竞争,因为它们在很多应用程序中更有生产 ...

  9. Hands-On Machine Learning with Scikit-Learn and TensorFlow---读书笔记

    去年在北京参加了一次由O'Reilly和Cloudera联合举办的大数据会议Strata Data Conference,并有幸获得了O'Reilly出版的Hands-On Machine Learn ...

  10. HDU [1529] || POJ [P1275] Cashier Employment

    经典的差分约束+二分答案. 本题的难点在于如何建图. 设x[i] 表示第i个小时可以开始工作的有多少个人. num[i] 表示第i个小时最少需雇佣多少人. s[i] 表示1...i小时实际开始工作的有 ...