java中定時執行任務
阿新 • • 發佈:2017-06-26
views sch start bsp tails pri ted java file
現在項目中用到需要定時去檢查文件是否更新的功能。timer正好用於此處。
用法很簡單,new一個timer,然後寫一個timertask的子類即可。
代碼如下:
[java] view plain copy- 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來間隔一段時間執行一個操作,也是通過一個線程來做到的。
【這樣就節省自己寫線程的時間啦】
java中定時執行任務