用線程池啟動定時器
(1)調用ScheduledExecutorService的schedule方法,返回的ScheduleFuture對象可以取消任務。
(2)支持間隔重復任務的定時方式,不直接支持絕對定時方式,需要轉換成相對時間方式。
- Executors.newScheduledThreadPool(3).schedule(new Runnable() {
- @Override
- public void run() {
- System.out.println("響");
- }
- }, 10,TimeUnit.SECONDS); //在10秒后響一次
- Executors.newScheduledThreadPool(3).scheduleAtFixedRate(new Runnable() { //頻率
- @Override
- public void run() {
- // TODO Auto-generated method stub
- System.out.println("響");
- }
- },
- 6,
- 2,
- TimeUnit.SECONDS); //在10秒后響之后,每隔2秒響一次