1. 程式人生 > >java中定時執行任務

java中定時執行任務

views sch start bsp tails pri ted java file

現在項目中用到需要定時去檢查文件是否更新的功能。timer正好用於此處。

用法很簡單,new一個timer,然後寫一個timertask的子類即可。

代碼如下:

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

這樣,就可以在1秒鐘之後開始執行mytask,每兩秒鐘執行一次。

當然,timer的功能也可以通過自己構造線程,然後在線程中用sleep來模擬停止一段時間,然後再執行某個動作。

其實,看一下timertask的源碼就立即可以知道,timertask就是實現了runnable接口的。也就是說,通過timer來間隔一段時間執行一個操作,也是通過一個線程來做到的。

【這樣就節省自己寫線程的時間啦】

java中定時執行任務