Java-Timer定時器的用法
阿新 • • 發佈:2022-04-13
Timer 定時器
- 定時器是一個應用十分廣泛的執行緒工具,可用於排程多個定時任務以後臺執行緒的方式執行。在Java中,可以通過Timer和TimerTask類來實現定義排程的功能
如何建立定時器呢?
- 1.建立定時器物件:Timer timer = new Timer();
- 2.建立一個自定義類,繼承TimerTask抽象類
- 3.呼叫 timer呼叫schedule(TimerTask task, long delay)方法
- 4.記得在自定義類中關閉定時器
程式碼如下:
public class TimerDemo { public static void main(String[] args) { //建立定時器物件 //Timer() //建立一個新的計時器。 Timer timer = new Timer(); //如何排程任務執行呢? //需求:在指定的延遲後執行指定任務的執行。定時在未來的某一時刻執行任務 //void schedule(TimerTask task, long delay) //delay 這個型別表示的是毫秒 // timer.schedule(new MyTask(timer), 3000); // timer.cancel(); //void schedule(TimerTask task, long delay, long period) //在指定 的延遲之後開始 ,重新執行 固定延遲執行的指定任務。 //schedule(new MyTask(timer), 3000, 2000) timer.schedule(new MyTask(timer),3000,2000); } } class MyTask extends TimerTask { private Timer timer; MyTask(Timer timer) { this.timer = timer; } @Override public void run() { // System.out.println("beng!!!爆炸了!!!"); BufferedReader br = null; try { br = new BufferedReader(new FileReader("a.txt")); String s = br.readLine(); System.out.println(s); } catch (IOException e) { e.printStackTrace(); }finally { if(br!=null){ try { br.close(); } catch (IOException e) { e.printStackTrace(); } } } // timer.cancel(); } }