【Java多线程与并发库】02 传统定时器技术
来源:互联网 发布:wordpress seo插件 编辑:程序博客网 时间:2024/06/05 11:35
【Java多线程与并发库】02 传统定时器技术
定时器和定时器任务的用处:
很简单,通过定时的完成某项任务。
关于定时器,主要是涉及到Timer和TimerTask两个类。
- Timer表示定时器,其常用的方法是schedule,调度方法。
- TimerTask表示定时任务,它是一个抽象类,其中包含一个抽象方法run。
传统定时器技术代码演示
单次定时操作
/** * description: * * @author liyazhou * @since 2017-08-13 19:58 */public class TraditionalTimerTest { public static void main(String... args){ new Timer().schedule(new TimerTask() { // 定时器的调度方法schedule接收一个定时器任务对象,其中的run方法体就是要执行的任务 @Override public void run() { System.out.println("execute task!" ); } }, 5000); // 单次执行,延迟5s执行 }}
等间隔时间内连环执行
/** * description: * * @author liyazhou * @since 2017-08-13 19:58 */public class TraditionalTimerTest { public static void main(String... args){ new Timer().schedule(new TimerTask() { @Override public void run() { System.out.println("bombing!" ); } }, 5000, 1000); // 等间隔时间内连环执行 }}
时快时慢不断执行定时器任务
/** * description: * * @author liyazhou * @since 2017-08-13 19:58 */public class TraditionalTimerTest { private static int counter = 0; // 内部类不能声明静态变量 public static void main(String... args){ class MyTimerTask extends TimerTask{ @Override public void run() { counter = (counter + 1) %2; System.out.println("MyTimerTask execute."); new Timer().schedule(new MyTimerTask(), // 递归地调用 2000 * counter); // 每个0s或者2s执行 } } new Timer().schedule(new MyTimerTask(), 1000); }}
参考
《Java多线程与并发库高级应用》
阅读全文
1 0
- 【Java多线程与并发库】02 传统定时器技术
- 【Java多线程与并发库】2.传统定时器技术回顾
- 【Java多线程与并发库】2.传统定时器技术回顾
- 【Java多线程与并发库】1.传统线程技术回顾
- 【Java多线程与并发库】1.传统线程技术回顾
- 【Java多线程与并发库】01 传统线程技术
- Java并发库(二):传统定时器技术回顾
- 【Java多线程与并发库】3.传统线程互斥技术
- 【Java多线程与并发库】4.传统线程同步通信技术
- 【Java多线程与并发库】3.传统线程互斥技术
- 【Java多线程与并发库】4.传统线程同步通信技术
- 【Java多线程与并发库】03 传统线程互斥技术 synchronized
- 【Java多线程与并发库】04 传统的线程同步通信技术-synchronized/wait/notify/notifyAll
- 【java并发】传统线程技术中的定时器技术
- 【java并发】传统线程技术中的定时器技术
- 多线程并发库高级应用 之 传统定时器、互斥、同步通信技术
- 多线程并发库高级应用 之 传统定时器、互斥、同步通信技术
- 多线程并发库高级应用 之 传统定时器、互斥、同步通信技术
- JDBC实现员工管理系统(一)
- 行级元素 块级元素 行内块级元素
- String和StringBuilder的区别
- jdbc
- Java密码学
- 【Java多线程与并发库】02 传统定时器技术
- 2018.8.12网易校招内推笔试题
- 部分简单数论模板(未完待续)
- 单例模式
- Java 并发: Volatile 深入详解
- bootstrap引入cdn后无法修改CSS样式---CSS优先级机制
- Proxy(代理)服务器
- 金蝶K3 SQL报表系列-BOM成本明细表
- 拼多多2018校招内推编程题汇总