글
JAVA의 Timer와 TimerTask
JAVA
2014. 2. 15. 11:30
Timer와 TimerTask를 이용하면 일정시간이 지난후에 해당 task가 실행되도록 해준다.
c의 sleep과의차이점은 sleep은 그 시간동안 아무것도 안하고 기다리는것에 비해
timertask를 이용하면 다른일을 하고 있다가 지정시간이 지난후 해당 task를 실행하므로
용도의차이가 있다.
결과:
코드:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | package pkg1; import java.util.ArrayList; import java.util.List; import java.util.Timer; import java.util.TimerTask; class Remotecon{ boolean open; Remotecon(){ this.open = false; } public void pressButton() { open = open?false:true; } public void close(){ this.open = false; } public void open(){ this.open = true; System.out.println("The door opens"); final Timer timer = new Timer(); TimerTask timertask = new TimerTask(){ public void run() { close(); System.out.println("The door closes"); timer.cancel(); } }; timer.schedule(timertask, 1000); } } public class Mytest { public static void main(String[] args) { Remotecon remotecon = new Remotecon(); remotecon.open(); System.out.println("HI"); } } |