2013. 1. 15. 16:17
Thread 의 currentThread() , interrupt() , join() 테스트 결과 I.lib()/I.lib(Java)2013. 1. 15. 16:17
..
..
..
.
Thread 를 테스트 해보았다.
1.
Thread serverThread = Thread.currentThread();
System.out.println("Name : " + serverThread.getName());
결과값은 Main 이 나온다. 기본적으로 Java 의 Main 을 실행시키면 Main 은 Thread로 실행되기 때문이다.
2.
this.serverThread.interrupt();
Thread.sleep(2000);
결과는 sleep interrupt 라는 Exception 이 나온다. 아마도 interrupt 라는 명령은 더이상 main Thread(메서드)
가 추가 Thread(sleep 스레드 건 부분) 를 생성할수 없게 한듯 하다.
3.
this.serverThread.join();
System.out.println("Hello");
결과는 무한 대기를 탄다. 이유는 join() 을 실행하면 main 메서드가 끝나기를 기다렸다가(락) 지정 스레드(main)가
끝이 나아 다음으로 진행하기 때문이다. (이부분은 테스트로 확인됨.)
'I.lib() > I.lib(Java)' 카테고리의 다른 글
[펌] Java File Writing 성능 비교 (0) | 2013.01.21 |
---|---|
BlockingQueue (0) | 2013.01.15 |
[암호화] 메시지 다이제스트(Message Digest) (0) | 2012.07.06 |
base64 인코딩 & 디코딩 원리 (0) | 2012.07.02 |
dwr 사용방법 (0) | 2012.03.22 |