자바스크립트에서는 setTimeOut 메소드를 이용하여 일정 시간 뒤 로직을 실행시킬 수 있지만,

백단 자바에서는 timeTask를 써야한다.

 

예제는 아래와 같다.

ExampleTimer.java 파일을 만든 뒤 아래의 코드를 작성.

 

package com.timer.ex;

import java.util.Timer;
import java.util.TimerTask;
 
public class ExampleTimer {
 
    private Timer timer;
    
    //task 클래스 생성
    public class TaskToDo extends TimerTask {
        int count=0;
        
        @Override
        public void run() {
            System.out.println(count + "th " + "Task Done!");
            count += 1;
        }
    }
    /////////////////////
    
    
    //setTimer 메소드 선언
    public void setTimer(long delay, long period) {
        timer = new Timer();
        timer.schedule(new TaskToDo(), delay, period);
    }
    //////////////
    
    public static void main(String args[]) {
        
        ExampleTimer exampleTimer = new ExampleTimer();
        exampleTimer.setTimer(2000, 1000); //처음에 2초 뒤에 시작. 1초간격으로 실행
    }
}
 

 

setTimer가 (2000, 1000) 이므로 처음에 2초 있다가 시작하며 console에 초당 카운트가 되는것을 볼수 있다.

0th Task Done!
1th Task Done!
2th Task Done!
3th Task Done!
4th Task Done!
5th Task Done!

 

+ Recent posts