问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java 中 如何使用Timer?

发布网友 发布时间:2022-04-24 11:45

我来回答

4个回答

懂视网 时间:2022-05-18 14:16

现在项目中用到需要定时去检查文件是否更新的功能。timer正好用于此处。

用法很简单,new一个timer,然后写一个timertask的子类即可。

代码如下:

package comz.autoupdatefile; 
import java.util.Timer; 
import java.util.TimerTask; 
public class M { 
 public static void main(String[] args) { 
 // TODO todo.generated by zoer 
 Timer timer = new Timer(); 
 timer.schedule(new MyTask(), 1000, 2000); 
 } 
} 
class MyTask extends TimerTask { 
 @Override 
 public void run() { 
 System.out.println("dddd"); 
 } 
} 

这样,就可以在1秒钟之后开始执行mytask,每两秒钟执行一次。

当然,timer的功能也可以通过自己构造线程,然后在线程中用sleep来模拟停止一段时间,然后再执行某个动作。

其实,看一下timertask的源码就立即可以知道,timertask就是实现了runnable接口的。也就是说,通过timer来间隔一段时间执行一个操作,也是通过一个线程来做到的。

热心网友 时间:2022-05-18 11:24

现在项目中用到需要定时去检查文件是否更新的功能。timer正好用于此处。
用法很简单,new一个timer,然后写一个timertask的子类即可。
package comz.autoupdatefile;

import java.util.Timer;
import java.util.TimerTask;

public class M {
public static void main(String[] args) {
// TODO todo.generated by zoer
Timer timer = new Timer();
timer.schele(new MyTask(), 1000, 2000);
}
}

class MyTask extends TimerTask {

@Override
public void run() {
System.out.println("dddd");

}

}
这样,就可以在1秒钟之后开始执行mytask,每两秒钟执行一次。
当然,timer的功能也可以通过自己构造线程,然后在线程中用sleep来模拟停止一段时间,然后再执行某个动作。
其实,看一下timertask的源码就立即可以知道,timertask就是实现了runnable接口的。也就是说,通过timer来间隔一段时间执行一个操作,也是通过一个线程来做到的。

热心网友 时间:2022-05-18 12:42

第一楼主Task定义成一个类的话 需要加class吧
第二楼主想10分钟之后 应该10 * 60 * 1000 ms 也就是应该
timer.schele(new Task(), 600000);少了一个零

完整的来说:
import java.util.Timer;
import java.util.TimerTask;

public class test {
public static void main(String args[]) {
Timer timer = new Timer();
timer.schele(new Task(), 600000);
}

static class Task extends TimerTask {
public void run() {
System.out.println("1234567");
}
}
}

热心网友 时间:2022-05-18 14:17

java api 里面的详细解释:
安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。以近似固定的时间间隔(由指定的周期分隔)进行后续执行。
在固定延迟执行中,根据前一次执行的实际执行时间来安排每次执行。如果由于任何原因(如垃圾回收或其他后台活动)而延迟了某次执行,则后续执行也将被延迟。从长期来看,执行的频率一般要稍慢于指定周期的倒数(假定 Object.wait(long) 所依靠的系统时钟是准确的)。

固定延迟执行适用于那些需要“平稳”运行的重复活动。换句话说,它适用于在短期运行中保持频率准确要比在长期运行中更为重要的活动。这包括大多数动画任务,如以固定时间间隔闪烁的光标。这还包括为响应人类活动所执行的固定活动,如在按住键时自动重复输入字符。

参数:
task - 所要安排的任务。
delay - 执行任务前的延迟时间,单位是毫秒。
period - 执行各后续任务之间的时间间隔,单位是毫秒。

还有安装你的意思你好像只需要在10秒后执行一次就好了,但是就不应该用t.schele(task, delay, period),应该用的是t.schele(task, delay,),你用的那个是会重复执行的,间隔为period毫秒;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 微信与支付宝两大互联网移动支付市场的对比分析 java timer 用法 java 中timer类的用法是什么? 黑枸杞是不是冲水后颜色越深越好 碱性水泡出的黑枸杞是什么颜色 黑枸杞在酸性水与碱性水中都是黄红色是假的嘛 杞里香黑果枸杞 黑枸杞泡水是什么味道 莲雾怎么吃,莲雾怎么吃图解,莲雾可以直接吃吗 黑枸杞泡水是什么味道,甜的还是酸的? 为什么霍金没有获得诺贝尔奖? 霍金为物理学作出巨大贡献,为什么却没有获得诺贝尔奖 关于莲雾的吃法 霍金去世享年76岁,为什么他没有获得诺贝尔奖 著名人物霍金,他有没有资格获得诺贝尔奖这个奖项? 莲雾的吃法 霍金获得了诺贝尔奖吗? 莲雾怎么吃,莲雾的正确吃法 霍金一生这么伟大,为什么从没有获得过诺贝尔奖 莲雾吃法都有哪些? java关于Timer计时器的问题求解 什么是JavaTimer类?如何创建一个有特定时间间隔的任务? java的timer类如何判断程序超时呢? 微信支付和支付宝有什么区别? java的Timer类怎么无法执行计时器任务了? java 定时器 timer java 中定时器timer是被什么触发的 java timer类自动执行 怎么用java中的timer做出延迟效果? 著名物理学家霍金去世享年76岁,为什么他未曾获得诺贝尔奖? 平语进校园童谣! 用java里timer执行定时任务,怎么写 被誉为近代最伟大科学家的霍金,为何一生无缘诺贝尔奖? 关于java定时器Timer的疑问,当执行时间大于间隔时间会怎样? 小学二年级语文考试后家长评语 一 请问JAVA中,怎么设置程序的运行间隔,Timer应该怎么用? 物理学天才霍金为什么没有获得诺贝尔奖? 求几首感恩的歌,并为每首歌写上一句适合的评语,表达对父母的感激 谢谢! 霍金的成就非常多为什么没有得诺贝尔奖? java timer怎么才配置具体的定时任务去调用方法去执行呢?