ScheduledThreadPoolExecutor實現定時器和延時載入功能

執筆記憶的空白發表於2015-04-27

java.util.concurrent.ScheduledThreadPoolExecutor 是 JDK1 .6之後自帶的 包,功能強大,能實現定時器和延時載入的功能


各類功能和處理方面優於Timer


1、定時器:

ScheduledThreadPoolExecutor  有個scheduleAtFixedRate(command, initialDelay, period, unit) ;方法    

command: 執行的執行緒(可自己New一個)

initialDelay:初始化執行的延時時間

period: 時間間隔

unit : 時間型別(如TimeUnit.SECONDS: 秒的方式執行  ,   TimeUnit.DAYS : 天數的方式執行)

具體程式碼:

	public static void main(String[] args) {
		stThread.scheduleAtFixedRate(new Runnable() {
			
			@Override
			public void run() {
				// TODO Auto-generated method stub
				System.out.println(new Date());
			}
		},
				20, 2, TimeUnit.SECONDS);
	}


2、延時處理

ScheduledThreadPoolExecutor  有個 schedule(callable, delay, unit) ; 方法

callable:回撥方法

delay:延時時間

unit:時間型別 , 同定時器的unit一樣

具體程式碼:

stThread.schedule((RolePrvlegeTask)SpringUtils.getBean("rolePrvlegeTask"), 1, TimeUnit.SECONDS);
















相關文章