Java实现一个简单的定时器代码解析
短信预约 -IT技能 免费直播动态提醒
定时的功能我们在手机上见得比较多,比如定时清理垃圾,闹钟,等等.定时功能在java中主要使用的就是Timer对象,他在内部使用的就是多线程的技术.
Time类主要负责完成定时计划任务的功能,就是在指定的时间的开始执行某个任务.
Timer类的作用是设置计划任务,而封装任务内容的类是TimerTask类.此类是一个抽象类,继承需要实现一个run方法.
利用java制作定时器比较简单,有现成的接口帮助实现。java中制作定时器使用的是Timer和TimerTask,是util包的。java.util.Timer定时器,实际上是个线程,定时调度所拥有的TimerTasks。 一个TimerTask实际上就是一个拥有run方法的类,需要定时执行的代码放到run方法体内,TimerTask一般是以匿名类的方式创建。
java.util.Timer timer = new java.util.Timer(true);// true 说明这个timer以daemon方式运行(优先级低, // 程序结束timer也自动结束),注意,javax.swing // 包中也有一个Timer类,如果import中用到swing包, // 要注意名字的冲突。 TimerTask task = new TimerTask() {public void run() {... //每次需要执行的代码放到这里面。}};//以下是几种调度task的方法: timer.schedule(task, time);// time为Date类型:在指定时间执行一次。 timer.schedule(task, firstTime, period);// firstTime为Date类型,period为long // 从firstTime时刻开始,每隔period毫秒执行一次。 timer.schedule(task, delay) // delay 为long类型:从现在起过delay毫秒执行一次 timer.schedule(task, delay, period) // delay为long,period为long:从现在起过delay毫秒以后,每隔period // 毫秒执行一次。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
Java实现一个简单的定时器代码解析
下载Word文档到电脑,方便收藏和打印~
下载Word文档
相关文章
- Ruby加密技术:如何改变数据存储方式?
- 在 Java 中,arraycopy 方法的具体用法是什么?(java中arraycopy的用法是什么)
- 如何巧妙利用 Java Map 来实现缓存功能?(如何利用Java Map实现缓存功能)
- Java 中 zlib 库的使用技巧有哪些?(Java中zlib库的使用技巧)
- 在 Java 中如何将 Object 转换为自定义类型?(java怎么将Object转换为自定义类型)
- Java多线程编程中常见错误有哪些?如何解决?(Java多线程编程常见错误及解决方法)
- 在 eclipse 中如何进行 java 代码规范设置?(eclipse下java代码规范设置)
- 如何在 Java 分布式架构中避免错误?(Java分布式架构如何避免错误)
- 如何利用 Java 多线程来进行数据统计?(怎么用java多线程统计数据)
- 掌握Ruby加密与解密:确保数据安全的关键步骤
猜你喜欢
Java实现一个简单的定时器代码解析
定时的功能我们在手机上见得比较多,比如定时清理垃圾,闹钟,等等.定时功能在java中主要使用的就是Timer对象,他在内部使用的就是多线程的技术.Time类主要负责完成定时计划任务的功能,就是在指定的时间的开始执行某个任务.Timer类的作
2023-05-30
2024-04-02
2024-04-02
java实现一个简单的网络爬虫代码示例
目前市面上流行的爬虫以python居多,简单了解之后,觉得简单的一些页面的爬虫,主要就是去解析目标页面(html)。那么就在想,java有没有用户方便解析html页面呢?找到了一个jsoup包,一个非常方便解析html的工具呢。使用方式也非
2023-05-30
iOS撸一个简单路由Router的实现代码
平常开发中用户点击头像, 进入个人主页,这看似平常的操作, 背后极有可能会牵扯到多个模块。 再如: 视频模块的播放页, 有与视频相关的音乐,点击这些音乐,需要跳转到音乐模块的播放页, 这样视频与音乐模块之间,不可避免的会产生依赖或耦合。 这
2022-05-24
从零开始实现一个简单的低代码编辑器
通过本篇文章,你能够学会如何基于 React 技术栈搭建一个最简单的低代码编辑器,以及部分重点功能的实现方式。
2024-04-02
2024-04-02
2024-04-02
几百行代码实现一个 JSON 解析器
当目前为止其实只是实现了一个非常基础的 JSON 解析,也没有做性能优化,和官方的 JSON 包对比性能差的不是一星半点。
2024-04-02
2024-04-02
基于Java快速实现一个简单版的HashMap详解
这篇文章主要为大家详细介绍了如何利用Java简单实现一个底层数据结构为数组 + 链表的HashMap,不考虑链表长度超过8个时变为红黑树的情况,需要的可以参考一下
2023-02-08
2024-04-02
2024-04-02
Java如何通过动态代理实现一个简单的拦截器操作
这篇文章主要介绍“Java如何通过动态代理实现一个简单的拦截器操作”,在日常操作中,相信很多人在Java如何通过动态代理实现一个简单的拦截器操作问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java如何通过动
2023-06-20
Java怎么通过动态代理实现一个简单的拦截器操作
本文小编为大家详细介绍“Java怎么通过动态代理实现一个简单的拦截器操作”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java怎么通过动态代理实现一个简单的拦截器操作”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧
2023-06-17
基于Redis实现一个简单的固定窗口限流器
我们基于在登录流程中使用的用户名进行速率限制。如果是基于其他指标进行限流(例如传入请求的远程IP地址),那么该限流器是不起作用的。
2024-04-02
2024-04-02