java创建单线程计时器_我们如何在Java中实现计时器线程?
该定时器类计划任务一次或多次给定的时间运行。它也可以作为后台程序线程在后台运行。要将Timer与守护程序线程相关联,有一个带有布尔值的构造函数。计时器以固定的延迟和固定的速率安排任务。在固定的延迟中,如果系统GC延迟了任何执行,则其他执行也将延迟,并且每次执行都将延迟与先前的执行相对应的时间。在固定速率下,如果系统GC延迟了任何执行,则将连续执行2-3次执行,以覆盖与第一个执行开始时间相对应的固定速率。Timer类提供一个cancel()取消计时器的方法。调用此方法时,计时器终止。Timer类仅执行实现TimerTask的任务。
示例import java.util.*;
public class TimerThreadTest {
public static void main(String []args) {
Task t1 = new Task("Task 1");
Task t2 = new Task("Task 2");
Timer t = new Timer();
t.schedule(t1, 10000); // executes for every 10 seconds t.schedule(t2, 1000, 2000); // executes for every 2 seconds }
}
class Task extends TimerTask {
private String name;
public Task(String name) {
this.name = name;
}
public void run() {
System.out.println("[" + new Date() + "] " + name + ": task executed!");
}
}
输出结果[Thu Aug 01 21:32:44 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:46 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:48 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:50 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:52 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:53 IST 2019] Task 1: task executed!
[Thu Aug 01 21:32:54 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:56 IST 2019] Task 2: task executed!
[Thu Aug 01 21:32:58 IST 2019] Task 2: task executed!
[Thu Aug 01 21:33:00 IST 2019] Task 2: task executed!
java创建单线程计时器_我们如何在Java中实现计时器线程?相关推荐
- java创建mongdb数据库_【转发】Java使用MongoDB数据库进行增删改查
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_26584263/article/ ...
- java 调用其他构造函数_我如何在Java中调用另一个构造函数?
是的,这是可能的: public class Foo { private int x; public Foo() { this(1); } public Foo(int x) { this.x = x ...
- 如何在MySQL中查询OS线程id(LWP)?
如何在MySQL中查询OS线程id(LWP)? [root@LHRDB ~]# ps -Lf 16833 UID PID PPID LWP C NLWP STIME TTY ...
- java安卓计时器_如何在android中设置计时器
通过java.util.Timer和java.util.TimerTask使用计时器的标准Java方法在Android中运行良好,但是你应该知道这个方法创建了一个新线程. 您可以考虑使用非常方便的Ha ...
- java创建临时文件夹_如何在Java中创建一个临时目录/文件夹?
有没有在Java应用程序内部创建临时目录的标准可靠方法? Java的问题数据库中有一个条目,注释中包含一些代码,但是我想知道在一个常用的库(Apache Commons等)中是否找到标准解决方案? # ...
- java创建access数据库_使用Java创建Access数据库文件(.mdb或.accdb)
Jackcess 2.x的更新:现在使用DatabaseBuilder创建(或打开)数据库,因此要创建一个新的数据库文件,我们这样做 import java.io.File; import java. ...
- java控件数组_在C# WinForm程序中创建控件数组及相应的事件处理
控件数组是VB提供的一个优秀的设计解决方案,它能很方便快捷的处理大批同类控件的响应和时间处理,但不知为什么在C#中这个优秀特性没有传承下来,甚为可惜,本文将要探讨就是如何在C# WinForm程序实现 ...
- java创建ee项目_项目头像–下一个Java EE功能?
java创建ee项目 又是一年中的这个时候. 圣诞节假期快到了,Java Advent Calender不断填满. 今天要写我的惊喜帖子. 我是Markus ,也称为@myfear , 多年来我一直在 ...
- java多线程实战指南_学习笔记《Java多线程编程实战指南》二
2.1线程属性 属性 属性类型及用途 只读属性 注意事项 编号(id) long型,标识不同线程 是 不适合用作唯一标识 名称(name) String型,区分不同线程 否 设置名称有助于代码调试和问 ...
最新文章
- 从零开始学_JavaScript_系列(14)——dojo(7)(饼图,BorderContainer,hashchange,弹窗)...
- 通过cordova将vue项目打包
- python可以在excel中应用吗,python怎样在excel中应用?-Python教程
- CSS+jQuery/JavaScript图片切换播放
- Cloud for Customer里UI5 JavaScript代码和UI designer里模型的对应关系
- LeetCode 152. 乘积最大子序列(DP)
- nodejs基于art-template模板引擎生成
- javascript嵌套函数和在函数内调用外部函数的区别
- oracle分区表官方指南
- 安装Bas的先决条件
- 64位Websphere MQ7在64位RHEL5下的安装及使用
- HTML中播放提示音
- Linux里面输入错误无法使用Backspace键
- java 打开word(docx)替换内容,并插入图片(盖章)
- 计算机机房通风,机房为什么要装通风系统?
- 下落(fall)【模拟】
- 一个关于Linux Bridge配置的吐嘈
- H5移动端 引入高德地图(获取经纬度与地址带搜索反选
- Communication error with Jack server
- C# textbox提示文字
热门文章
- Java Fork / Join进行并行编程
- Windows 如何在命令终端(CMD)使用命令来访问本地/远程的 Oracle 数据库呢?
- h5jumppage.php,h5使用webviewjsbridge跟原生交互,点击标签调用2次webview
- php输出分组,ThinkPHP 项目分组中的模板输出
- mysql注入漏洞语句,web安全之sql注入漏洞
- @cacheable 是否缓存成功_缓存策略:如何使用缓存来减少磁盘IO?
- dockerfile mysql例子_docker-compose 实用示例
- python 港股交易数据_GitHub - 116pythonZS/futuquant: 富途量化平台 API
- css中会计算的属性,2017年12月聚合文章--calc() ---一个会计算的css属性 | 码友网
- centos8配置本地光盘yum源_CentOS8 配置本地yum源的详细教程