- 浏览: 188373 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
Errorize:
一个用servlet实现导出csv文件的实例 -
wendellhu:
求monkey talk应用文档的解压密码
monkey talk应用文档 -
wendellhu:
加密的?
monkey talk应用文档 -
hugang357:
hslh22 写道不错的资源,可以使用,只是没有最大最小值的限 ...
数字微调输入框 -
hslh22:
不错的资源,可以使用,只是没有最大最小值的限制,需要自己去加逻 ...
数字微调输入框
Java2的开发包中提供了一种很使用的线程功能:提前安排将来某段时间执行某任务Timer ,TimerTask。
你可以使用这些类创建后台进程,让其在等待一段规定的时间后执行,或者让其没隔一段时间执行。
你也可以用Thread来完成,但利用Timer与TimerTask显然省事不少。
TimerTask实现了Runnable接口,待执行的任务置于run()中。
Timer是一个安排TimerTask的类此此两者一般一起工作。所应用时首先硬创建一个TimerTask的对象,
然后用一个Timer的类对象安排执行它
Timer类包含的方法有:
1.Timer()
以常规方式运行task
2.Timer(boolean)
true时使用后台进程线程。只要剩下的程序记叙运行,后台进程线程就会执行。
3.public void cancel()
终止Timer的功能执行,但不会对正在执行的任务有影响。当执行cancel方法后将不能再用其分配任务。
4.public void schedule(TimerTask task,Date time)
task被安排在time指定的时间执行,如果时间为过去时则任务立刻执行。
5.public void schedule(TimerTask task, Date firstTime, long period)
task被安排在time指定的时间执行,执行后将每隔period(毫秒)反复执行。由于规定的时间间隔并不能保证与时钟精准的同不步,所以该方
法最适合从短期看保持频率准确是更重要的的地方
6.public void schedule(TimerTask task, long delay)
task被安排在delay(毫秒)指定的时间后执行。
7.public void schedule(TimerTask task,long delay, long period)
task被安排在delay(毫秒)指定的时间后执行。执行后将每隔period(毫秒)反复执行。
8.public void scheduleAtFixedRate(TimerTask task,Date firstTime, long period)
task被安排在firstTime指定的时间执行。执行后将每隔period(毫秒)反复执行。每一次重复的时间时盒第一次执行而不是和前一次执行有关
。因此执行的总速度是固定的。
9.public void scheduleAtFixedRate(TimerTask task,long delay,long period)
task被安排在delay(毫秒)指定的时间后执行。执行后将每隔period(毫秒)反复执行。每一次重复的时间时盒第一次执行而不是和前一次执
行有关。因此执行的总速度是固定的。
TimerTask的主要方法:
1.public boolean cancel()
终止任务的执行运行。如果Timer时要求循环执行的,则如果正在执行,则执行完了就再步会循环。如果还未执行或处于停歇期,则不会执行
了
2.public abstract void run()
3.public long scheduledExecutionTime()
返回被安排最后执行任务的时间。一般确定任务的当今的实行是否足够及时 ,证明进行被计划的活动为正当:
public void run() {
if (System.currentTimeMillis() - scheduledExecutionTime() >=
MAX_TARDINESS)
return; // Too late; skip this execution.
// Perform the task
}
4.protected TimerTask()
例:
- package com.robin.demo.timertask;
- import java.util.Timer;
- import java.util.TimerTask;
- public class TimerTaskDemo extends TimerTask {
- String index;
- Timer myTimer = new Timer();
- public TimerTaskDemo(String index) {
- this.index = index;
- }
- public void run() {
- System.out.println(index);
- }
- /**
- * @param args
- */
- public static void main(String[] args) {
- TimerTaskDemo myTask1 = new TimerTaskDemo("First task");
- myTask1.start(0,3);
- TimerTaskDemo myTask2 = new TimerTaskDemo("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();
- }
- }
发表评论
-
12hh
2013-06-07 09:35 783fdgtg -
百度只剩1
2012-03-22 00:10 0附件 -
Timer与TimerTask实例
2011-05-24 22:51 1389今天看了一下Timer与TimerTask的用法并且在网上 ... -
web应用每晚12点定时执行程序代码实例
2011-05-24 22:50 20951、当前web应用的web.xml文件配置容器监听类com ... -
Tomcat java 定时任务
2011-05-24 22:49 1215如何在Web工程中实现任 ... -
Java定时器在Web中的应用
2011-05-24 22:46 938本文实例的最终功能是每天某个时间点(如每晚22点)执行某一功能 ... -
java 导出成.csv文件的乱码问题
2011-05-19 23:54 2579已经解决因为所有页面都是用UTF-8的编码方式。本以为这 ... -
一个用servlet实现导出csv文件的实例
2011-05-19 23:49 3249Java采用反射导出CSV文件替代导出Excel p ... -
Google分页的经典案例
2011-05-05 22:26 798上一页 [1][2][3][4][5][6] ... -
Google分页的经典案例
2011-05-05 22:25 10031 、创建 Page 类, pack ... -
网络管理:openldap详解
2011-04-27 22:45 1111简介 LDAP是轻量目录 ... -
openldap的配置手册
2011-04-27 22:44 931最近一直在安装opneldap-2 ... -
slapd.conf 配置文件中的高级功能使用方法
2011-04-27 22:42 14921. 开启日志功能启用日 ... -
OpenLDAP主配置文件slapd.conf介绍
2011-04-27 22:41 1293安全起见,slapd.conf文件应该只让运行此进程的用户可读 ... -
定制你的LDAP目录的Schema
2011-04-27 22:38 1238(http://www.infoxa.com/asp/tech ... -
ubuntu 8.04上openldap的安装和使用
2011-04-27 22:36 10591、安装openldap。$ sudo apt-get ins ... -
ubuntu上部署OpenLDAP
2011-04-27 22:34 1787原文地址:https://help.ubuntu.com/co ... -
OpenLDAP中 Schema的详细介绍
2011-04-27 22:33 3163本章讲述了如何扩展用户使用的schema。本章假设阅读者已经熟 ... -
第一个JFreeChart实例
2011-01-21 00:12 2551JFreeChart的使用非常简单,我们只需要提供满 ... -
JFreeChart简介及下载、配置
2011-01-21 00:00 1767JFreeChart简介 JFreeChart是 ...
相关推荐
我们平时经常会用到timer,不过将timer放在主线程会加重主线程的负担 所以我们更倾向于使用多线程实现timer,每隔一段时间再通知主线程更新ui 大致思路: 使用thread,run,...使用timer,timerTask实现定时器功能
Java定时器应用主要涉及到`Timer`类和`TimerTask`类,这两个类是Java.util包下的,用于实现延时和周期性任务的调度。...但`Timer`和`TimerTask`对于初学者来说是一个很好的入门选择,因为它们的使用相对简单直观。
Java中的定时任务是编程中非常常见的一种需求,用于在特定时间执行特定...总的来说,Java的`Timer`和`TimerTask`是入门级的定时任务实现方式,适合简单的定时需求。对于更复杂的应用场景,应考虑使用更专业的定时框架。
本文将深入探讨如何编写Android计时器程序,为初学者提供入门指导。 首先,我们需要了解Android应用的基本结构。一个Android应用通常由多个组件组成,如Activity、Service、BroadcastReceiver和ContentProvider。在...
J2ME还提供了一个定时器机制(Timer和TimerTask),用于实现游戏循环和动画效果。 在编写游戏逻辑时,理解面向对象编程(OOP)概念至关重要。游戏中的角色、场景、物理规则等可以抽象为类,通过继承和多态性实现...
Java的Timer和TimerTask类可以用于实现定时更新和动画帧的调度。 7. **文件I/O**:游戏可能需要保存和加载玩家进度,这就涉及到文件读写操作。Java的File、InputStream和OutputStream类是实现这一功能的基础。 8. ...
3. **定时任务**:通过`Timer`和`TimerTask`类实现每秒自动更新时间。 #### 二、核心代码解析 ##### 1. 导入包及类 ```java package thread; // 应该是包名,但这里命名为“thread”可能会导致与其他包冲突 ...
4. **Java Web中的Timer应用**:"Java Web中 Timer应用.doc"和"Java 类Timer和TimerTask的使用.doc"可能讨论了Java的定时器功能,这在需要周期性任务执行的场景中非常有用,例如后台数据刷新、定时发送邮件等。...
4. **计时器**:通过定时器更新动画,例如使用`javax.microedition.midlet.Timer`和`javax.microedition.midlet.TimerTask`。 5. **状态管理**:在J2ME中,应用程序通常由多个状态组成,如主菜单、游戏进行中、暂停...
* Java 的 Util 包中的 Stack 类、Timer 类、TimerTask 类的使用方法 * Java 的 Swing 包中的窗口类、按钮类、标签类、面板类、复选框类等一些常用组件的用法 * 通过这些组件来掌握事件监听器的用法、Java 中栈的...
为了实现游戏逻辑,我们需要使用到J2ME的时间管理机制,比如Timer和TimerTask。通过设置定时器,我们可以控制游戏的节奏,例如方块的下落速度或者玩家的操作间隔。同时,我们需要编写碰撞检测算法,检测方块与屏幕...
6. **定时器(Timer)**:在Java中,可以使用java.util.Timer和TimerTask类来实现定时任务。在SSM项目中,如果需要定期执行某些任务,如数据清理、统计分析等,可以借助Spring的TaskScheduler或者Quartz等第三方库来...
JAVA的java.util.Timer和TimerTask类可以用来安排定时任务。 3. 数据持久化:如果游戏有得分系统,那么得分数据需要保存。JAVA提供了文件I/O操作,如FileWriter和BufferedWriter,可以将得分写入文件,实现数据持久...
`Timer`类用于创建定时任务,而`TimerTask`是定义定时任务的类。例如,以下代码每隔2秒执行一次任务,然后在下一次执行时间隔4秒,再接着每隔2秒,如此循环: ```java public static void main(String[] args) { ...
- **成员变量**:包括一个布尔标志 `started` 用于标记 `startApp()` 方法是否首次被调用、一个 `Thread` 对象 `thread` 用于后台线程处理、一个 `Timer` 对象 `timer` 以及一个 `TimerTask` 对象 `task` 用于定时...
4. **定时任务**:`timerTask`示例可能使用了`java.util.Timer`和`TimerTask`类来执行定时任务。这两个类允许程序在指定的时间间隔执行特定任务,常用于后台服务或定时提醒等功能。 5. **卡片布局管理器**:`...
2. 时间管理:通过定时器(Timer)和定时器任务(TimerTask)实现游戏的帧率控制,确保游戏流畅运行。 3. 碰撞检测:通过比较坦克和地图、子弹的坐标,判断是否发生碰撞,通常采用矩形碰撞检测法。 4. 状态管理:...
3. 时间管理:为了实现动态游戏,需要使用Timer和TimerTask类来控制游戏循环和动画帧率。 五、砖块破坏者游戏 "brickbreaker.zip"可能包含一个砖块破坏者的示例代码。这个经典的弹球游戏通常包括一个球和一个挡板,...
<br>AOP 入门 AOP 的观念与术语都不是很直觉,可以先从代理机制(Spring 实现 AOP 的一种方式)来看看实际的例子,从而了解 AOP 的观念与各种术语。 从代理机制初探 AOP 动态代理 <br>AOP 观念与...