java中定时执行任务

如今项目中用到须要定时去检查文件是否更新的功能。timer正好用于此处。java

用法很简单,new一个timer,而后写一个timertask的子类便可。ide

代码以下:spa

[java]  view plain  copy
 
  1. package comz.autoupdatefile;  
  2.   
  3. import java.util.Timer;  
  4. import java.util.TimerTask;  
  5.   
  6. public class M {  
  7.     public static void main(String[] args) {  
  8.         // TODO todo.generated by zoer  
  9.         Timer timer = new Timer();  
  10.         timer.schedule(new MyTask(), 1000, 2000);  
  11.     }  
  12. }  
  13.   
  14. class MyTask extends TimerTask {  
  15.   
  16.     @Override  
  17.     public void run() {  
  18.         System.out.println("dddd");  
  19.   
  20.     }  
  21.   
  22. }  

这样,就能够在1秒钟以后开始执行mytask,每两秒钟执行一次。.net

固然,timer的功能也能够经过本身构造线程,而后在线程中用sleep来模拟中止一段时间,而后再执行某个动做。线程

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

【这样就节省本身写线程的时间啦】接口

相关文章
相关标签/搜索