출처 :
http://blog.naver.com/json2811?Redirect=Log&logNo=90108554853
import java.util.Timer;
import java.util.TimerTask;
public class Timer02 {
private Timer timer = null;
private TestTask02 task = null;
public static void main(String[] args) throws InterruptedException {
Timer02 tester = new Timer02();
for( int i=0; i<3 ; ++i ) {
tester.start();
Thread.sleep(5 * 1000); // 5초동안 sleep한다. 그러므로 5번 기동하게 된다.
tester.stop();
Thread.sleep(5 * 1000);
}
}
public Timer02() {
timer = new Timer(true);
}
public void start() {
if (task == null) {
task = new TestTask02();
}
System.out.println("Task is started...");
timer.schedule(task, 0, 1000); // Timer가 TimerTask를 1초에 한번씩 기동시킨다.
}
public void stop() {
task.cancel();
task = null;
System.out.println("Task is terminated...");
}
}
class TestTask02 extends TimerTask {
int i = 0;
public void run() {
System.out.println((++i) + " second"); // 원하는 처리를 여기에 기술한다.
}
}
[출처] Java - Timer, TimerTask|작성자 제이슨


