多线程之-----------定时器

简介: 对于定时器,想必生活中用到的不少吧,比如我设置个定时炸弹,又比如我设置的闹钟,都是定时器的实现原理,那么定时器在多线程中怎么实现的呐,是通过这个类    Timer  直接看代码吧,public class Tr...

对于定时器,想必生活中用到的不少吧,比如我设置个定时炸弹,又比如我设置的闹钟,都是定时器的实现原理,那么定时器在多线程中怎么实现的呐,是通过这个类    Timer  

直接看代码吧,

public class TraditionalTimeTest {
    private static int count = 0;
    public static void main(String[] args) {
        /*new Timer().schedule(new TimerTask() {
            @Override
            public void run() {
                System.out.println("BangBang");
            }
        },10000,1000);*/
        class MyTimer extends TimerTask{

            @Override
            public void run() {
                System.out.println("BangBang");
                count = (count + 1) % 2;
                new Timer().schedule(new MyTimer(),2000);
            }
        }

        new Timer().schedule(new MyTimer(),2000 + 2000*count);

        while (true) {
            System.out.println(new Date().getSeconds());
            try {
                Thread.sleep(5000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

 

相关文章
|
6月前
多线程案例-定时器(附完整代码)
多线程案例-定时器(附完整代码)
298 0
|
6月前
|
设计模式 消息中间件 安全
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
60 1
|
6月前
|
安全 Java
Java多线程基础-10:代码案例之定时器(一)
`Timer` 是 Java 中的一个定时器类,用于在指定延迟后执行指定的任务。它常用于实现定时任务,例如在网络通信中设置超时或定期清理数据。`Timer` 的核心方法是 `schedule()`,它可以安排任务在延迟一段时间后执行。`
133 1
|
1月前
|
安全 Java
【多线程-从零开始-拾】Timer-定时器
【多线程-从零开始-拾】Timer-定时器
31 0
|
3月前
|
数据采集 Java Python
python 递归锁、信号量、事件、线程队列、进程池和线程池、回调函数、定时器
python 递归锁、信号量、事件、线程队列、进程池和线程池、回调函数、定时器
|
6月前
|
设计模式 安全 Java
多线程(代码案例: 单例模式, 阻塞队列, 生产者消费者模型,定时器)
多线程(代码案例: 单例模式, 阻塞队列, 生产者消费者模型,定时器)
57 2
|
6月前
|
设计模式 安全 Java
Java 多线程系列Ⅳ(单例模式+阻塞式队列+定时器+线程池)
Java 多线程系列Ⅳ(单例模式+阻塞式队列+定时器+线程池)
|
5月前
|
安全 Java 容器
线程池,定时器以及阻塞队列(生产者/消费者模型)
线程池,定时器以及阻塞队列(生产者/消费者模型)
39 0
|
6月前
|
消息中间件 缓存 Java
【多线程学习】深入探究定时器的重点和应用场景
【多线程学习】深入探究定时器的重点和应用场景
119 1
|
6月前
|
Java 调度
Java多线程基础-10:代码案例之定时器(二)
Java 多线程基础中,定时器(Timer)的实现通常使用 `PriorityBlockingQueue` 和 `wait/notify` 机制来管理任务。
44 0