`

49、java.util.Timer类

阅读更多

一、java.util.Timer定时器类

 

/**
 * java.util.Timer
 * 一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。
 * 与每个 Timer 对象相对应的是单个后台线程,用于顺序地执行所有计时器任务。
 * 对 Timer 对象最后的引用完成后,并且 所有未处理的任务都已执行完成后,计时器的任务执行线程会正常终止(并且成为垃圾回收的对象)。
 * 此类是线程安全的:多个线程可以共享单个 Timer 对象而无需进行外部同步。 
 * 此类不 提供实时保证:它使用 Object.wait(long) 方法来安排任务。
 */
public class Timer
{
	//构造方法

	//创建一个新计时器。相关的线程不 作为守护程序运行。
	public Timer(){}

	//创建一个新计时器,可以指定其相关的线程作为守护程序运行。
	public Timer(boolean isDaemon){}

	//创建一个新计时器,其相关的线程具有指定的名称。相关的线程不 作为守护程序运行。
	public Timer(String name){}

	//创建一个新计时器,其相关的线程具有指定的名称,并且可以指定作为守护程序运行。
	public Timer(String name,
             boolean isDaemon){}

	//常用方法

	//终止此计时器,丢弃所有当前已安排的任务。
	public void cancel(){}

	//安排在指定的时间执行指定的任务。如果此时间已过去,则安排立即执行该任务
	public void schedule(TimerTask task,
                     Date time){}

	//安排指定的任务在指定的时间开始进行重复的固定延迟执行。以近似固定的时间间隔(由指定的周期分隔)进行后续执行。 
	public void schedule(TimerTask task,
                     Date firstTime,
                     long period){}

	//安排在指定延迟后执行指定的任务。
	public void schedule(TimerTask task,
                     long delay){}

	//安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。以近似固定的时间间隔(由指定的周期分隔)进行后续执行。
	public void schedule(TimerTask task,
                     long delay,
                     long period){}

	//安排指定的任务在指定的时间开始进行重复的固定速率执行。以近似固定的时间间隔(由指定的周期分隔)进行后续执行。 
	public void scheduleAtFixedRate(TimerTask task,
                                Date firstTime,
                                long period){}

	//安排指定的任务在指定的延迟后开始进行重复的固定速率执行。以近似固定的时间间隔(由指定的周期分隔)进行后续执行。 
	public void scheduleAtFixedRate(TimerTask task,
                                long delay,
                                long period){}
}

 

 二、java.util.TimerTask类

 

/**
 * java.util.TimerTask
 * 由 Timer 安排为一次执行或重复执行的任务。
 */
public abstract class TimerTask implements Runnable
{
	//常用方法

	//此计时器任务要执行的操作
	public abstract void run();
}

 

三、示例

 

import java.util.*;
public class TimerTest
{
	private static int count = 1;
	public static void main(String[] args)
	{
		Timer timer = new Timer("myTimer");
		timer.schedule(new TimerTask(){
			public void run()
			{
				System.out.println(Thread.currentThread().getName()+" running");
			}
		},2000,1000);

		new Timer().schedule(new TimerTask(){
			public void run()
			{
				System.out.println(count);
				count ++;
			}
		},0,1000);
	}
}

 

分享到:
评论

相关推荐

    java.util.timer实现的简单定时任务

    Java.util.Timer类是Java标准库提供的一种简单但功能有限的定时任务执行机制。它允许开发者在指定的时间间隔或特定时间点执行任务,非常适合处理一次性或周期性的后台操作。本篇文章将深入探讨如何使用Timer和...

    java.util.ConcurrentModificationException 异常问题详解1

    Java.util.ConcurrentModificationException 异常问题详解 ConcurrentModificationException 异常是 Java 中一个常见的异常,它发生在 Iterator 遍历集合时,集合同时被修改引起的异常。在 Java 中,集合类如 ...

    java.util.pdf

    由于描述和标签均重复标题,我们可以推断文档重点在于解释和示例展示java.util包中的类与接口。java.util是Java的标准库中的一个包,主要用于数据结构、日期和时间处理等。 在java.util包中,包含了一些Java集合...

    java.sql.date与java.util.date.pdf

    Java提供了多个类和接口来处理日期和时间,其中`java.util.Date`和`java.sql.Date`是两个经常被混淆和讨论的类,尤其是在数据库编程中。由于这两个类在概念和功能上有所不同,理解它们之间的区别对于编写有效的Java...

    java.util.concurrent.uml.pdf

    标题中提到了“java.util.concurrent.uml.pdf”,这表明文件是一份Java并发编程工具包java.util.concurrent的UML(统一建模语言)类结构图的PDF格式文件。UML图能够帮助开发者理解Java并发包中的类、接口及其关系,...

    java.util包总结

    Java.util包是Java标准库中的核心包之一,它包含了大量用于日常编程的工具类和接口。这个包在Java 2版本中得到了显著增强,引入了许多重要的数据结构和算法,为Java程序员提供了更丰富的功能。 首先,Java.util包中...

    Timer-java.rar_java timer_timer_timer java

    在Java编程语言中,`Timer`类是Java.util包下的一个关键组件,它主要用于调度周期性的任务执行。这个`Timer`类提供了定时器的功能,能够按照预设的时间间隔执行任务,比如更新UI、执行定时检查等。在描述中提到的是...

    java timer定时器详解(附详细代码)

    Java Timer定时器主要是通过java.util.Timer和java.util.TimerTask两个类来实现的。 Java.util.Timer类 java.util.Timer类是Java Timer定时器的核心类,它可以执行任务并且可以指定任务的执行频率。Timer类有两种...

    使用java.util.Timer实现任务调度

    Java.util.Timer 是 Java 平台中用于实现定时任务调度的一个工具类。它允许开发者安排任务在将来某个特定时刻或按照一定的周期重复执行。任务调度在软件开发中扮演着重要角色,尤其是在需要自动化处理、定期检查或...

    java定时器代码

    Java内置了多种实现定时任务的方式,其中`java.util.Timer`类是最常用的一种。 #### 二、`java.util.Timer`类简介 `java.util.Timer`类提供了在将来某个时刻或定期执行任务的能力。它使用`java.util.TimerTask`...

    java定时执行代码.

    Java提供了多种实现定时任务的机制,这里主要介绍两种:Java.util.Timer类和java.util.concurrent.ScheduledExecutorService接口。 1. Java.util.Timer类: Timer类是Java早期提供的定时任务工具,它可以安排在...

    schedule

    这里的关键词是“java.util.Timer”和“java.util.TimerTask”,这两个类在Java中用于实现定时任务的调度。 ### 标签:“schedule” 标签同样为“schedule”,进一步确认了文档的核心关注点在于定时任务的安排与...

    Java计时器Timer和TimerTask用法总结

    Timer 类位于 java.util 包中,提供了多种构造方法和方法来实现延迟执行任务。 TimerTask TimerTask 是一个抽象类,用于定义需要执行的任务。它实现了 Runnable 接口,因此可以被线程执行。TimerTask 类位于 java....

    java SE API

    java.util.concurrent.atomic java.util.concurrent.locks java.util.jar java.util.logging java.util.prefs java.util.regex java.util.zip javax.accessibility javax.activity javax.crypto javax....

    java在服务启动的时候启动定时器

    timer.schedule(task, 0, 5000); // 每隔5秒执行一次 } } ``` 在这个例子中,`TimerTask`是一个实现了`run`方法的匿名内部类,代表要执行的任务。`schedule`方法的第二个参数是首次执行的延迟,第三个参数是两次...

    java时间控制代码

    本文将通过一个具体的示例来详细介绍如何利用`java.util.Date`和`java.util.Timer`类实现线程的运行时间控制。 #### 二、关键概念解析 ##### 2.1 `java.util.Date` `java.util.Date`类用于表示特定的时间点。它...

    java中的定时器,定时访问某程序等

    Java提供了多种实现定时任务的方式,其中最常用的包括`java.util.Timer`类和`java.util.concurrent.ScheduledExecutorService`接口。本篇文章将深入探讨这两种方法以及它们在实际应用中的使用。 首先,我们来看`...

    java定时关机源码

    timer.schedule(new ShutdownTimer(), delay); } } ``` 然而,`java.util.Timer`并不是线程安全的,因此在多线程环境中可能会出现问题。为了解决这个问题,Java 5引入了`java.util.concurrent....

    java定时执行方法&节拍器

    最基础的是使用`java.util.Timer`类和`java.util.TimerTask`类。`Timer`类用于创建一个定时调度线程,而`TimerTask`则代表要定时执行的任务。以下是一个简单的例子: ```java import java.util.Timer; import java....

    Java标准包中基本常用类和方法.docx

    * java.util.Timer:定时器类,提供了定时任务的执行方法。 二、String 类 String 类是 Java 语言中最基本的类之一,提供了字符串的处理方法。常用的方法包括: * length():获取字符串的长度。 * startsWith...

Global site tag (gtag.js) - Google Analytics