`
beyondbn
  • 浏览: 71448 次
社区版块
存档分类
最新评论

java定时器的几种用法

    博客分类:
  • Java
 
阅读更多

参考:http://blog.csdn.net/bzuld/article/details/8598776

 

[java] view plaincopy
 
  1. package com.lid;  
  2.   
  3. import java.util.Calendar;  
  4. import java.util.Date;  
  5. import java.util.Timer;  
  6. import java.util.TimerTask;  
  7.   
  8. public class Test {  
  9.     public static void main(String[] args) {  
  10.         //timer1();  
  11.         timer2();  
  12.         //timer3();  
  13.         //timer4();  
  14.     }  
  15.   
  16.     // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)  
  17.     public static void timer1() {  
  18.         Timer timer = new Timer();  
  19.         timer.schedule(new TimerTask() {  
  20.             public void run() {  
  21.                 System.out.println("-------设定要指定任务--------");  
  22.             }  
  23.         }, 2000);// 设定指定的时间time,此处为2000毫秒  
  24.     }  
  25.   
  26.     // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行  
  27.     // schedule(TimerTask task, long delay, long period)  
  28.     public static void timer2() {  
  29.         Timer timer = new Timer();  
  30.         timer.schedule(new TimerTask() {  
  31.             public void run() {  
  32.                 System.out.println("-------设定要指定任务--------");  
  33.             }  
  34.         }, 10001000);  
  35.     }  
  36.   
  37.     // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。  
  38.     // scheduleAtFixedRate(TimerTask task, long delay, long period)  
  39.     public static void timer3() {  
  40.         Timer timer = new Timer();  
  41.         timer.scheduleAtFixedRate(new TimerTask() {  
  42.             public void run() {  
  43.                 System.out.println("-------设定要指定任务--------");  
  44.             }  
  45.         }, 10002000);  
  46.     }  
  47.      
  48.     // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.  
  49.     // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)  
  50.     public static void timer4() {  
  51.         Calendar calendar = Calendar.getInstance();  
  52.         calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时  
  53.         calendar.set(Calendar.MINUTE, 0);       // 控制分  
  54.         calendar.set(Calendar.SECOND, 0);       // 控制秒  
  55.   
  56.         Date time = calendar.getTime();         // 得出执行任务的时间,此处为今天的12:00:00  
  57.   
  58.         Timer timer = new Timer();  
  59.         timer.scheduleAtFixedRate(new TimerTask() {  
  60.             public void run() {  
  61.                 System.out.println("-------设定要指定任务--------");  
  62.             }  
  63.         }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行  
  64.     }  
  65. }  
分享到:
评论

相关推荐

    JAVA上百实例源码以及开源项目

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

    JAVA上百实例源码以及开源项目源代码

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

    java范例开发大全源代码

     实例80 如何使用charAt()方法计算重复字符 109  实例81 按字母顺序比较大小 110  实例82 首尾相连 111  实例83 字符串间的比较 112  实例84 字符集的解码方法 113  实例85 寻找指定字符第一次出现...

    java范例开发大全

    实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找...

    Java范例开发大全 (源程序)

     实例80 如何使用charAt()方法计算重复字符 109  实例81 按字母顺序比较大小 110  实例82 首尾相连 111  实例83 字符串间的比较 112  实例84 字符集的解码方法 113  实例85 寻找指定字符第一次出现的位置...

    Java范例开发大全(全书源程序)

    实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86...

    个人总结的深入java多线程开发

    4)几种多线程代码写法 10 5)一个超时自动退出程序的类 12 6)同步锁synchronized 13 7)一个程序执行1秒之后自动退出 13 8)线程的状态 14 9)线程阻塞的条件(重要) 14 10) Interrupt()注意事项 16 三. 线程之间协作 17 ...

    java范例开发大全(pdf&源码)

    实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找...

    一种基于Java企业内部及时通讯软件设计.doc

    考虑到UDP协议不可靠性,该通信器的通信协议 中采用了确认与重传机制来保证数据传输的可靠性,采用了动态的超时重传定时器值提 高了本协议的适应性和灵活性,还使用了在应用层对数据进行分片的方法来避免IP层分 片的...

    阿里巴巴,天猫,支付宝面试题

    14. spring的bean配置的几种方式 15. web.xml的配置 16. spring的监听器。 17. zookeeper的实现机制,有缓存,如何存储注册服务的 18. IO会阻塞吗?readLine是不是阻塞的 19. 用过spring的线程池还是java的线程池? ...

    JavaScript笔记

    使用方法:方法名()-->方法调用-->立即执行 2.js文件:网页外专门保存js脚本的文件--推荐 强调:HTML、CSS、JS都要使用UTF-8编码保存(window系统) 使用js文件引入网页:[removed][removed] 强调:一旦定义...

    windows 程序设计

    Windows NT还可以移植到非Intel处理器上,并在几种使用RISC芯片的工作站上执行。 Windows 95是在1995年8月发布的。和Windows NT一样,Windows 95也支持Intel 386或更高等级处理器的32位保护模式。虽然它缺少Windows...

    网狐荣耀版开发使用常见问题解答

    新建JAVA_HOME对应C:\Program Files\Java\Jdk1.8、新建CLASSPATH对应.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar、编辑Path的最后加上;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin。最后打开CMD窗口进行测试是否安装成功...

    Linux多线程服务端编程:使用muduo C++网络库

    《Linux多线程服务端编程:使用muduo C++网络库》主要讲述采用现代C++在x86-64 Linux上编写多线程TCP网络服务程序的主流常规技术,重点讲解一种适应性较强的多线程服务器的编程模型,即one loop per thread。...

Global site tag (gtag.js) - Google Analytics