閱讀247 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Java常用類庫--定時調度(Timer、TimerTask)

定時調度:每當一到時間,程序會自動執行,稱為定時調度。
如果要使用定時調度,則必須保證程序始終運行著才可以,也就是說相當於定時調度是在程序之外又啟動了一個新的線程。

Timer和TimerTask兩個類完成定時調度。





如果現在一個Timer類要想調度程序的話,則需要使用TimerTask的子類。
就依照此概念,完成一個定時調度的程序,每隔2秒打印一次時間。

// 完成具體的任務操作 
import java.util.TimerTask ;
import java.util.Date ;
import java.text.SimpleDateFormat ;
class MyTask extends TimerTask{	// 任務調度類都要繼承TimerTask
	public void run(){
		SimpleDateFormat sdf = null ;
		sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") ;
		System.out.println("當前係統時間為:" + sdf.format(new Date())) ;
	}
};

完成的是一個具體的任務操作類,以後定時調度就調度的是此類的操作。方法的主體就是run()方法。
建立測試類,並執行任務調度。

import java.util.Timer ;
public class TestTask{
	public static void main(String args[]){
		Timer t = new Timer() ;	// 建立Timer類對象
		MyTask mytask = new MyTask() ;	// 定義任務
		t.schedule(mytask,1000,2000) ;	// 設置任務的執行,1秒後開始,每2秒重複
	}
};




最後更新:2017-04-03 14:53:53

  上一篇:go poj 1318 Word Amalgamation
  下一篇:go mysql hash 索引 vs B-TREE 索引 理解