* 멀티스레드 개념과 동작
Process (프로세스)
- 메모리에 적재된 상태로 실행되는 하나의 작업 단위.
- 하나의 운영 체계에서 여러 개의 프로세스가 동시에 실행되는 환경을 멀티태스킹(multi-tasking)
Thread (스레드)
- 프로그램 수행 시 프로세스 내부에 존재하는 일련의 실행 흐름의 단위.
- 프로세스 생성 시 하나의 주 스레드가 생성되어 대부분의 작업을 처리하고 주 스레드가 종료되면 프로세스도 종료
- 하나의 프로세스 내에서 다수의 스레드가 동시에 수행되는 것을 멀티스레딩 (multi-threading)
Multi-thread(멀티스레드) 동작
Start
- thread 생성 후에 start() method 호출 시 동작 시작 단계이다.
Runnable
- thread가 실행되면 일반적으로 runnable 상태가 된다.
- runnable 상태의 thread는 여러 개 존재 할 수 있다.
Run
- runnable 상태에서만 run 상태가 될 수 있다.
- 단 한 순간 단 하나의 thread만이 run 상태가 된다.
NotRunnable
- NotRunnable 상태는 run 상태로 진입 할 수 없지만 dead 상태는 아닌 대기 상태이다.
- 다른 상태와 달리 직접 제어해야 상태 진입이 가능하다.
Dead
- run() method의 종료는 thread의 종료를 의미한다.
'JAVA' 카테고리의 다른 글
[JAVA-환경설정] JDK 1.6 다운로드와 설정 (0) | 2012.12.07 |
---|---|
[JAVA-환경설정] eclipse 설치 (0) | 2012.12.06 |
[JAVA-개념] 객체지향 언어의 특징 (1) (0) | 2012.10.27 |
[JAVA-개념] Java의 특징 (0) | 2012.10.27 |
[JAVA-환경설정] java compile level 설정 (0) | 2012.01.05 |