- 浏览: 467076 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (272)
- java基础 (59)
- struts (8)
- spring (8)
- 数据库 (8)
- java 网络编程 (29)
- hibernate (3)
- JavaScript (10)
- 日志管理 (2)
- jsp (4)
- servlet (7)
- xml (4)
- ajax (2)
- web service (4)
- 算法与数据结构 (13)
- java 反射机制 (11)
- java 泛型 (3)
- java I/O (8)
- java 线程 (12)
- JavaEE (6)
- java解惑 (33)
- 工具 (5)
- MyEclipse编程实践 (1)
- OSGI (2)
- 设计模式 (9)
- 正则表达式 (0)
- EJB (3)
- Ubuntu linux (6)
- Android (1)
- web前端 (2)
- 找工作 (1)
- SCA (1)
- maven (1)
- 缓存 (1)
- json (1)
- javamail (1)
- 工作笔记 (2)
最新评论
-
霜花似雪:
博主可以分享一下源码吗?
使用maven构建web项目实例 -
王庆波-行:
很好的demo!
memcache使用实例 -
surpassno:
大写的牛逼
java可视化显示内存使用情况 -
zhulin0504:
怎么访问NetEcho.html页面呀???
applet与servlet的网络通信 -
springdata:
java多线程实例demo源代码下载:http://www.z ...
java多线程例子
有时需要在一定时间段后,执行某一个操作
java中现有的Timer与TimerTask类
我们在实际使用中可能出现定时run一个程序或者重复的run,这种情况下,就可以使用Timer与TimerTask
Timer和TimerTask这两个类。在java.util这个包中可以找到这两个类。Timer直接从Object继承,它相当于一个计时器,能够用它来指定某个时间来执行一项任务,或者每隔一定时间间隔反复执行同一个任务。创建一个Timer后,就会生成一个线程在背后运行,来控制任务的执行。而TimerTask就是用来实现某项任务的类,它实现了Runnable接口,因此相当于一个线程。更多相关的知识请参见JDK文档。
Timer的schedule方法主要有如下几种重载形式:
TimerTask类实现了Runnable接口,要执行的任务由它里面实现的run方法来完成。
1,要完成的任务:
2,将要完成的任务写入Timetask线程主体里
调用java.util.Timer
例2:
运行结果为:
First task
Second task
Second task
Second task
First task
Second task
Second task
Second task
例2的一个Timer对应多个TimerTask,多个TimeTask可以都停也可停其中的几个
java中现有的Timer与TimerTask类
我们在实际使用中可能出现定时run一个程序或者重复的run,这种情况下,就可以使用Timer与TimerTask
Timer和TimerTask这两个类。在java.util这个包中可以找到这两个类。Timer直接从Object继承,它相当于一个计时器,能够用它来指定某个时间来执行一项任务,或者每隔一定时间间隔反复执行同一个任务。创建一个Timer后,就会生成一个线程在背后运行,来控制任务的执行。而TimerTask就是用来实现某项任务的类,它实现了Runnable接口,因此相当于一个线程。更多相关的知识请参见JDK文档。
Timer的schedule方法主要有如下几种重载形式:
--schedule(TimerTask task,long delay) 指定隔多长时间(delay)后执行TimerTask类中的任务代码 --schedule(TimerTask task,Date time) 指定在什么时候(date)开始执行TimerTask类中的任务代码 --schedule(TimerTask task,long delay ,long period) 指定隔多长时间(delay)后定期执行TimerTask类中的任务代码,period指定了定期的时间间隔 --schedule(TimerTask task, Date firstTime , long period) 指定在什么时候(date)开始定期执行TimerTask类中的任务代码,period指定了定期的时间间隔
TimerTask类实现了Runnable接口,要执行的任务由它里面实现的run方法来完成。
1,要完成的任务:
import java.util.Timer; import java.util.TimerTask; import java.util.Date; class println{ public void printlntime(){ System.out.println(new Date()); } }
2,将要完成的任务写入Timetask线程主体里
class TimerTasktask extends TimerTask{ @Override public void run() { // TODO Auto-generated method stub System.out.println("start"); println a=new println(); a.printlntime(); } }
调用java.util.Timer
public class TimerTaskTest { public static void main(String[] args){ Timer timer = new Timer(); timer.schedule(new TimerTasktask(), 1000, 2000); try{ Thread.sleep(1000); }catch(Exception ex){ timer.cancel(); } } }
例2:
import java.util.*; public class TimeTest extends TimerTask { String index; Timer myTimer = new Timer(); public TimeTest(String index) { this.index = index; } public void run() { System.out.println(index); } public static void main(String args[]) { TimeTest myTask1 = new TimeTest("First task"); myTask1.start(0,3); TimeTest myTask2 = new TimeTest("Second task"); myTask2.start(0,1); try{ Thread.sleep(6000); } catch(InterruptedException e){ } myTask1.end(); myTask2.end();//程序结束时用cancel()结束Timer } public void start(int delay, int internal) { myTimer.schedule(this, delay * 1000, internal * 1000); //利用timer.schedule方法 } public void end(){ myTimer.cancel(); } }
运行结果为:
First task
Second task
Second task
Second task
First task
Second task
Second task
Second task
例2的一个Timer对应多个TimerTask,多个TimeTask可以都停也可停其中的几个
发表评论
-
java Romdom例子
2011-06-16 16:41 1886random.netInt()如果括号里 ... -
java 内部类详解(转)
2011-06-01 15:47 4964Java 内部类 分四种:成员内部类、局部内部类、静态内部类和 ... -
Fibonacci数列计算+找出出现次数最多字符+不同数字的排列组合
2011-05-26 15:40 20971,斐波拉契数列的计算 package chapter9; ... -
java中的System类中的方法
2011-05-24 11:00 992public final class System exten ... -
java可视化显示内存使用情况
2011-05-20 16:03 2586package memoryManage; /* * ... -
java 界面swing之表格
2011-05-20 13:39 6527package othertest; import ja ... -
java的队列和栈的一些api
2011-05-16 11:31 1693类 Stack<E> java.lang.Obje ... -
JAVA 中一些api(字符字符串缓冲,URL类,Math类方法,正则表达式)
2011-05-12 10:36 1734CharBuffer字符缓冲区, StringBuffer字符 ... -
java applet 一个简单的例子(applet+html)
2011-05-09 16:49 4155java applet是一个类,其层次结构如下图: 类 JAp ... -
java 核心技术(数组(杨辉三角),散列码,对象拷贝,枚举类型,定时器)
2011-05-04 10:43 1557数组java中无多维数组,都是一维数组,多维数组可以看做是数组 ... -
设计模式总结
2011-04-26 16:50 868对于GoF总结的经典的23中设计模式,分为3类: (1)创建型 ... -
猜数字游戏
2011-04-12 17:27 1174package guessNumber; import ... -
Comparator实现排序
2011-04-01 14:13 8647在java.util包中有一个Collections类,里面实 ... -
21天学会java(含电子书下载)
2011-03-15 16:12 253021天学通java 比较基础 第一天 创建简单applicat ... -
理解浮点数存储
2011-03-15 09:44 985整体呈现 二进制浮 ... -
java.lang.UnsatisfiedLinkError解决办法
2011-03-10 16:59 1172实质上就是Eclipse下配置jdk,jre环境的问题 win ... -
java string,stringbuffer区别例子
2011-01-11 14:44 1357public class test_3 { public ... -
对象简单克隆clone和引用(转)
2010-12-15 17:02 868对象克隆,返回和原对 ... -
java applet例子---图片像素处理
2010-12-07 17:01 1919package applet; import java. ... -
java applet例子---跟踪图片对象的加载
2010-12-07 16:56 1495用java.awt包中的MediaTracker跟踪一个Ima ...
相关推荐
JAVA中定时器的使用 JAVA 中的定时器是指在特定的时间或时间间隔执行某个任务的机制。JAVA 中提供了多种方式来实现定时器,包括使用 Timer 和 TimerTask 类,使用 ScheduledExecutorService 等。 在 JAVA 中,...
Java定时器(Timer)是Java.util包中的一个类,它提供了调度任务的能力,可以在未来的某个时间点或定期执行任务。这个功能在很多场景下都非常有用,例如数据同步、监控、清理过期数据等。在Web应用中,定时器通常会...
本篇文章将深入探讨Java定时器的使用方法和关键概念。 ### 1. Java定时器类介绍 Java定时器类`Timer`和`TimerTask`是配合使用的。`Timer`用于创建定时器实例并调度任务,而`TimerTask`则是一个抽象类,用于定义要...
在使用JAVA定时器时,需要注意以下几点: * 在中不能够设置default-lazy-init="true",否则定时任务不触发。 * 在中不能够设置default-autowire="byName"的属性,否则后台会报org.springframework.beans.factory....
Java定时器是Java编程语言中用于执行特定任务的调度工具,它允许程序员在指定的时间间隔后执行特定的代码块或任务。在Java中,我们主要使用`java.util.Timer`类和`java.util.TimerTask`类来实现定时器功能。这两个类...
### Java定时器使用详解 #### 一、定时器(Timer)概述 在Java语言中,`Timer`类位于`java.util`包内,主要用于管理基于时间的事件。它能够安排某些任务在未来某个时间点或者按照一定的周期性重复执行。为了使用`...
Java定时器(Timer)是Java Swing库中的一个类,它提供了调度任务在未来某个时间执行的能力。这个类主要用于在GUI应用程序中实现定时触发某些操作,比如更新界面、执行动画或者执行周期性的后台任务。Timer类结合了...
java定时器,import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; 规定每天几点执行一次
在Java编程中,定时任务是不可或缺的一部分,它们用于执行周期性操作,如数据备份、监控、清理等。本文将深入探讨如何在Java中设置和停止定时任务,主要关注`java.util.Timer`和`java.util.TimerTask`,以及更现代的...
Java定时器和Spring定时器是Java开发中用于执行周期性任务的重要工具,它们在系统维护、数据同步、报告生成等场景中发挥着关键作用。本文将深入探讨这两个概念,以及如何在Spring框架中配置和使用定时器。 首先,...
Java定时器框架Quartz是Java开发中用于任务调度的一个强大工具,它允许开发者精确地控制任务的执行时间,包括一次性任务和周期性任务。Quartz以其灵活性和稳定性,在企业级应用中广泛使用,尤其在需要定期执行后台...
Java定时器服务是Java平台中用于执行定时任务的关键组件,它允许开发者安排未来或定期的任务执行。在Java中,我们通常使用`java.util.Timer`类和`java.util.TimerTask`类来实现定时服务。这两个类提供了创建、调度和...
Java定时器,也被称为`Timer`类,是Java标准库中的一个强大工具,它允许开发者在指定的时间间隔执行任务,从而实现定时操作。这个类在`java.util`包中定义,是实现定时任务调度的核心。在本文中,我们将深入探讨`...
JAVA定时器,只要服务开启,就能指定某些代码在某个时刻执行,例如:监狱里罪犯的余刑天数,每天都要减少,就可以设置一个定时器在每天的23:59:59来执行减少余刑天数的天。
在使用Java定时器时,我们需要注意以下几点: 1. **线程安全**:如果定时任务涉及到共享资源,确保任务代码是线程安全的,避免并发问题。 2. **异常处理**:定时任务可能会抛出异常,需要正确捕获并处理,防止任务...
这个“java定时器.rar”压缩包可能包含了关于如何使用Java定时器的相关示例代码和教程。 Java定时器类库主要由两个核心类组成:`Timer`和`TimerTask`。`Timer`类是定时器本身,负责调度任务;而`TimerTask`是实现了...
### Java定时器实现详解 在Java编程中,定时任务是常见的需求之一,无论是服务器的定期维护、数据同步,还是客户端的动画更新等场景,都需要用到定时器来精确控制任务的执行时间。本文将深入解析一个基于Java的简单...