Java中Timer和TimerTask的使用
转自:http://www.cdtarena.com/javapx/201306/8893.html
java.util.Timer定时器,实际上是个线程,定时调度所拥有的TimerTasks。
一个TimerTask实际上就是一个拥有run方法的类,需要定时执行的代码放到run方法体内,TimerTask一般是以匿名类的方式创建。
一个完整的Timer:
- java.util.Timer timer = new java.util.Timer(true);
- // true 说明这个timer以daemon方式运行(优先级低,
- // 程序结束timer也自动结束),注意,javax.swing
- // 包中也有一个Timer类,如果import中用到swing包,
- // 要注意名字的冲突。
- TimerTask task = new TimerTask() {
- public void run() {
- ... //每次需要执行的代码放到这里面。
- }
- };
- //以下是几种调度task的方法:
- timer.schedule(task, time);
- // time为Date类型:在指定时间执行一次。
- timer.schedule(task, firstTime, period);
- // firstTime为Date类型,period为long
- // 从firstTime时刻开始,每隔period毫秒执行一次。
- timer.schedule(task, delay)
- // delay 为long类型:从现在起过delay毫秒执行一次
- timer.schedule(task, delay, period)
- // delay为long,period为long:从现在起过delay毫秒以后,每隔period
- // 毫秒执行一次。
下面是一个完整的例子,由两个类组成,一个定制任务,一个调用java.util.Timer
定制任务:
- import java.util.Timer;
- public class TimerTaskTest extends java.util.TimerTask{
- @Override
- public void run() {
- // TODO Auto-generated method stub
- System.out.println("start");
- }
- }
2.调用java.util.Timer
- import java.util.Timer;
- public class Test {
- public static void main(String[] args){
- Timer timer = new Timer();
- timer.schedule(new TimerTaskTest(), 1000, 2000);
- }
- }
根据上面的介绍,便可以在1秒后,每隔2秒执行一次程序。
Java中Timer和TimerTask的使用的更多相关文章
- Java 中Timer和TimerTask 定时器和定时任务使用的例子
转自:http://blog.csdn.net/kalision/article/details/7692796 这两个类使用起来非常方便,可以完成我们对定时器的绝大多数需求 Timer类是用来执行任 ...
- 定时任务:Java中Timer和TimerTask的使用
java.util.Timer定时器,实际上是个线程,定时调度所拥有的TimerTasks. 一个TimerTask实际上就是一个拥有run方法的类,需要定时执行的代码放到run方法体内,TimerT ...
- Java中Timer和TimerTask来实现计时器循环触发
package xian; import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.Fi ...
- java的Timer和TimerTask
java中Timer类使用的方法是如下的: Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() ...
- Java定时任务Timer、TimerTask与ScheduledThreadPoolExecutor详解
定时任务就是在指定时间执行程序,或周期性执行计划任务.Java中实现定时任务的方法有很多,本文从从JDK自带的一些方法来实现定时任务的需求. 一.Timer和TimerTask Timer和Tim ...
- Java中timer的schedule()和schedualAtFixedRate()函数的区别
本文主要讨论java.util.Timer的schedule(timerTask,delay,period)和scheduleAtFixedRate(timerTask,delay,period)的区 ...
- Java并发--Timer和TimerTask
下面内容转载自: http://blog.csdn.net/xieyuooo/article/details/8607220 其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了r ...
- java中Timer类的详细介绍(详解)
一.概念 定时计划任务功能在Java中主要使用的就是Timer对象,它在内部使用多线程的方式进行处理,所以它和多线程技术还是有非常大的关联的.在JDK中Timer类主要负责计划任务的功能,也就是在指定 ...
- Java中Timer的用法
现在项目中用到需要定时去检查文件是否更新的功能.timer正好用于此处. 用法很简单,new一个timer,然后写一个timertask的子类即可. 代码如下: package comz.autoup ...
随机推荐
- vagrant 入门1
1. Vagrant功能: Vagrant usesOracle's VirtualBox to build configurable, lightweight, and portable ...
- ubuntu ~/.bash_history
sudo apt-get update sudo apt-get install python-pip sudo pip install Django==1.7.1 sudo apt-get inst ...
- Qt学习 之 文件
文件操作是应用程序必不可少的部分.Qt 作为一个通用开发库,提供了跨平台的文件操作能力.从本章开始,我们来了解下 Qt 的文件以及输入输出的功能,也就是 I/O 系统. Qt 通过QIODevice提 ...
- maven安装jar到本地仓库
class12.jar这个东西在中央仓库里没有,所以,cmd到oracle\product\10.2.0\db_1\jdbc\lib路径下,mvn install 就好了(发布第三方jar到本地库) ...
- 一个i++和++i导致的严重的错误
当我曾经在写一个strlen的实现时,用递归写出了如下的代码: int strlen(const char *s) { if(*s=='\0') ; else ; } 程序一运行就崩溃了,why!都是 ...
- lua学习:使用Lua处理游戏数据
在之前lua学习:lua作配置文件里,我们学会了用lua作配置文件. 其实lua在游戏开发中可以作为一个强大的保存.载入游戏数据的工具. 1.载入游戏数据 比如说,现在我有一份表单: data.xls ...
- JS+CSS打造三级折叠菜单,自动收缩其它级 js
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="C ...
- Jquery - checked 全选与取消全选
html: <!DOCTYPE html> <html> <head> <title>节点列表</title> <link rel=& ...
- C语言--union关键字(转载)
union维护足够的空间来放置多个数据成员中的“一种”,而不是为每一个数据成员配置空间.在union中,所有的数据成员共用一个空间,同一时间只能存储其中一个数据成员,所有的数据成员具有相同的起始地址.
- Qt中文件操作遇到的(变量,容器,结构体)
咳咳!总结了一下我在使用QT文件操作时所用到的,再接再厉!再接再厉!! 1.保存到文件: QFile file("test.txt"); if (!file.open(QIODev ...