-
java :: Thread Life cycle (생명주기) & synchronized (동기화)IT/Java & JSP & FW 2012. 3. 21. 18:32
Thread Life Cycle
New - Thread 가 만들어진 상태
Runnable - Thread Object 가 생성된 후에 star() 메소드를 호출 하면 Runnable 상태로 이동
Running - Runnable 상태에서 Thread Scheduler에 의해 Running 상태로 이동
Blocked - Thread가 다른 특정한 이유로 Running 상태에서 Blocked 상태로 이동
Dead - Thread 가 종료되면 그 Thread 는 다시 시작할 수 없음
synchronized 흐름도
Object class의 wait(), notify(), notifyAll()- Synchronization된 Thread는 Synchronization Block에서 다른 Thread에게 제어권을 넘기지 못한다.- 이와 같이 Synchronization된 Block에서 Thread간의 통신(제어권을 넘김)하기 위해서는 wait(),notify(),notifyAll() method를 사용해야 한다.- 이 method를 사용할 때 주의 해야 할 점은 synchronzied Block에서만 의미가 있다.- Synchronized Block이 아닌 경우에 사용할 경우 java.lang.IllegalMonitorStateException 이 발생한다.
Object의 wait(),notify(), notifyAll()의 흐름도
'IT > Java & JSP & FW' 카테고리의 다른 글
java :: 소켓 socket (2) 2012.03.23 java :: 자바 입출력 패키지 (2) 2012.03.22 java :: Properties class (0) 2012.03.21 java :: Assertion의 설명과 문법 (0) 2012.03.19 java :: enum 에 관한 예제 (0) 2012.03.16