java定时器的使用(Timer)

showtooltip 2020-06-23

Java提供了java.util.Timer,java.util.TimerTask这两个类,很方便的可以实现定时器功能。

其中,TimerTask类,是负责具体的定时任务。

废话不多说,先来看一个最简单的例子。

package test;

import java.util.Timer;
import java.util.TimerTask;

public class Test {

	public static void main(String[] args) {

		long delay = 2000;
		long period = 1000;

		Timer timer = new Timer();
		timer.schedule(new TimerTask() {
			int i = 4;

			@Override
			public void run() {

				if (i >= 0) {
					System.out.println("hello timer		" + i--);
				} else {
					timer.cancel();
				}

			}
		}, delay, period);

	}

}

 

这里的delay,意思是程序运行之后,多久开始执行定时任务,而period则是定时器任务执行的周期。

该例子的功能非常简单,就是执行了5次输出。

那么该如何取消定时器任务呢?这里,当i小于0的时候,使用timer的cancel()方法取消定时器任务。

输出结果如下:

hello timer		4
hello timer		3
hello timer		2
hello timer		1
hello timer		0

 

除此之外还有另外的几个方法:

void    schedule(TimerTask task, Date time)

//在特定时间点,执行任务一次。

void    schedule(TimerTask task, Date firstTime, long period)

//在特定时间点执行任务,并且设定任务的间隔时间period

void    schedule(TimerTask task, long delay)

//参数中的Date日期,换成了long形式。

void    schedule(TimerTask task, long delay, long period)

//例子所用的,delay时间之后,间隔period执行定时器任务。

Java可以做网站吗?需要掌握哪些知识?
Java可以做网站吗?答案是可以,百分之百可以。事实上,网站正确说法,应该叫做WEB服务,而WEB服务类型多种多样,恰好网站是其中一种使用最广泛方式。虽然目前PHP大行其道,但其实,绝大多数...
mysql-connector-java-5.1.49-bin.jar和mysql-connector-java-5.1.49.jar应该用哪个?
下载了最新mysql-connector-java-5.1.49,解压之后,打开文件夹,发现里面有两个jar包,其中一个,是后面带有bin命名,另外一个不带。 那么到底应该用哪一个? 事实上,这...
火影世界里,开启八门遁甲之后,能否使用类似纲手怪力拳?
,还是小李,亦或者迈特戴,为什么开门之后只用体术?因为他们没法用狂暴查克拉释放忍术啊! B级忍术都需要精细查克拉控制了,更何况高难度和级别忍术。 或许刚开一门时候,稍微能使用点基础忍术,但是...
网站后台tag是什么意思啊?有什么作用吗?
,主要是为了SEO优化使用。   一、利用tag做聚合页面 虽然现在tag重要程度比不上以前,但好处还是有,利用tag做聚合页面,能够让页面获得高权重排名。其实解释起来也很简单,比如,你有十篇...
为什么许多程序员都喜欢在GitHub上分享自己项目?
着开源代码去盈利事情,却依然抵挡不住程序员分享精神,allowblank认为,有以下几点理由。   一、乐于分享程序员,是真心想要帮助他人。 我们在使用互联网产品时候,99%软件和服务都是...
草根站长杂谈:如何建立一个优秀个人博客网站?
数量,足以见其流行度,Halo使用Java开发,这意味着你用该程序建站,可能至少需要VPS,主机空间是不行,毕竟很少有主机空间支持Java。 除此之外,hexo也是一个不错选择,该项目使用...
JSP <c:out>标签中escapeXML方法转义了哪些字符?
escapeXml默认值是true缘故,也就是默认开启了对value值转义,这就默认,让你在使用<c:out>标签时,提供了安全性。 许多没有意识到escapeXml优点开发者,往往...
草根站长杂谈:细数网络上那些杂七杂八营销推广方式。
深恶痛绝之,毫无节操,毫无下限营销推广人员干出事情。 打个比方,某个Java贴吧内,遇到动不动就高大上词汇,动不动就截图大佬,这里头有真,但更多却是伪装成大佬营销人员。 小白不懂,以为对方...
在练习中如何使用banddha?
在练习中如何使用banddha,我有时候都不知道我在做什么? 答:banddha,就是收缩肛门,当你练习时觉得身体轻盈,当你觉得往前跳,穿越,向上提都不费力时,那就意味着你banddha来了。当...
魔兽世界怀旧服 唤醒多回蓝小技巧+舞动之藤任务流程+唤醒宏使用方法
简介:非战斗状态用宏是不卡公共CD,但是战斗中会卡公共CD导致浪费DPS,适合极度缺蓝情况和奈法这样BOSS。建议平时用普通唤醒,酌情使用宏 第一个:鼠标左右键宏(3个宏后面汉字换成自己武器...
网站关键词排名低,要不要使用快排?快排有没有风险?
不管是新手站长还是老站长,都会为关键词排名低而烦恼过。明明付出努力去做了,却得不到回报煎熬,让许多站长挖空心思选择一些投机方式,比如——快排技术。那么我们要不要使用快排呢?   一、先搞清楚快...
nginx是什么(nginx和tengine哪个好)
web服务器。 web方面服务器是非常多,例如JavaTomcat,就是web服务器,例如PHP开发者常用Apache,也是web服务器,NGINX和Apache类似,也是一个web服务器,支持...