今天为了方便用户自行维护一个任务的调度,自己用timer实现了一个任务调度功能,顺便学习了java的timer使用方法,总结了下,主要有以下关键点:
(1)Timer有两个构造方法,分别是Timer()和Timer(boolean isDemen),后者可以指定Timer所创建的线程是否为守护线程,如果创建为守护线程,在当前jvm的所有非守护线程都退出,不管timer的线程是否停止,程序都退出。
(2)Timer主要的调度方法是schedule,根据参数不同可以有多种方式进行调度,其中关键的一个参数是TimerTask,就是调度的任务,该类实现了Runnable,这和我们实现线程的方式有点相似了,但是这里要注意,刚开始我误以为这里实现了一个TimerTask,timer执行任务的时候会启动一个新的线程去调用该TimerTask,其实不是这样,整个Timer定时器就一个线程,Thread的名字为"Timer-i",其中i为系统自增的一个整数,新增一个定时器(new Timer())就new一个Thread,并维护一个TimerTask的集合TaskQueue,在创建的Timer-i线程中对TaskQueue中的TimerTask进行调度,执行TimerTask的run方法,但是,在这执行过程中,没有产生新的线程,也就是说,各TimerTask的执行也是在Timer-i线程下执行的。
(3)Timer中用cancel方法对终止当前的定时器,清空所有的调度,退出(如果当前有任务在执行,就等该任务执行完成)Timer-i线程。
分享到:
相关推荐
所有类型的 Java 应用程序一般都需要计划重复执行的任务。企业应用程序需要计划每日的日志或者晚间...在本文中,Java 开发人员 Tom White 向您展示了如何构建一个简单通用的计划框架,以用于执行任意复杂的计划任务。
在《Java语言中Timer类的简洁用法》文档中,作者Tom White提出了一个增强的计划框架,旨在提供更大的灵活性,以应对各种复杂的定时任务需求。这个框架由两个类和一个接口组成,易于理解和使用,适合已经熟悉Java...
Java定时器,也被称为`Timer`类,是Java标准库中的一个强大工具,它允许开发者在指定的时间间隔执行任务,从而实现定时操作。这个类在`java.util`包中定义,是实现定时任务调度的核心。在本文中,我们将深入探讨`...
Java中Timer的schedule()方法参数详解 Java中Timer的schedule()方法是Java中的一个定时任务机制,允许开发者在特定的时间点或时间间隔执行特定的任务。schedule()方法是Timer类中的一个方法,用于安排一个任务的...
本文总结了 Java 中的 Timer 和 TimerTask 的用法和实现原理。我们介绍了 Timer 和 TimerTask 的基本概念、使用方法和示例代码,并讨论了如何将 Timer 和 TimerTask 与 GUI 组件整合,以实现实时显示时间的效果。
在Java中,`Timer` 类是Java.util包的一部分,它提供了一种方便的方式来按计划执行任务,这些任务通常称为`TimerTask`。`Timer` 类主要用于创建一个后台线程,该线程负责调度和执行由`TimerTask`对象定义的任务。`...
Java5中的`java.util.Timer`类是一个非常实用的工具,用于调度周期性的任务执行。它在多线程环境中提供了一种高效且灵活的方式来安排任务在未来某个时间点或定期执行。这个类是Java早期版本中对定时任务管理的一个...
在Java编程中,`Timer`类和`TimerTask`类是用于实现定时任务和计划任务的核心组件。它们属于`java.util`包,为开发者提供了在特定时间间隔执行任务的能力。然而,标准的`Timer`类和`TimerTask`类在某些复杂场景下...
在Java编程语言中,`Timer` 类和 `TimerTask` 类是用于实现定时任务调度的重要工具。它们位于 `java.util` 包下,允许开发者在指定的时间间隔内执行任务,或者在特定时间点执行一次性任务。下面我们将深入探讨 `...
Java定时器(Timer)是Java语言中用于调度任务的一个重要工具,它允许程序在特定时间间隔执行预定的任务,或者在指定的时间点执行一次性任务。这个功能对于构建具有定时任务需求的应用程序,如定期数据同步、后台...
在Java编程语言中,`Timer`类是Java.util包下的一个关键组件,它提供了一种在后台线程中定期执行任务的能力。这个类主要用于计划将来某一时点执行的任务,或者定期重复执行的任务。本篇文章将深入探讨`Timer`类的...
Java 语言中的 `Timer` 类和 `TimerTask` 类是用于计划和执行周期性任务的重要工具,它们在 Java 2 SDK, Standard Edition, Version 1.3 中被引入。这两个类为开发者提供了一种简单的方式来安排任务在未来的某个时刻...
Java定时器Timer是Java语言中用于在线程中定时执行任务的工具类,它提供了调度任务的能力,可以在指定的延迟后或者按照固定的周期执行任务。Timer类位于`java.util`包中,是线程安全的,但并不保证实时执行,这意味...
以上就是`JAVA`中的`Timer`和`TimerTask`的基本用法和注意事项。通过合理利用这两个类,开发者可以构建出灵活的定时执行逻辑,适应各种复杂的场景需求。在实际项目中,尤其是在服务器端编程、后台任务调度等场合,`...
【Java中的Timer和TimerTask在Android中的应用】 在Android开发中,我们经常遇到需要定期执行某项任务的情况,如更新UI、发送心跳包等。这时,Java提供的Timer和TimerTask类就显得非常实用。这两个类可以帮助我们在...
Java Timer 类是一个调度工具,用于计划将来在后台线程中执行的任务。它的主要用途是在给定的时间点或按特定的时间间隔执行任务。Timer 接受一个 TimerTask 的实例作为参数,TimerTask 是一个抽象类,需要子类化并...
本文实例讲述了Python定时执行之Timer用法。分享给大家供大家参考。具体分析如下: java中Timer的作用亦是如此。python中的线程提供了java线程功能的子集。 #!/usr/bin/env python from threading import Timer ...