Skip to Content
Suffering builds character
아카이브13.프로세스,스레드특징자바에서의 스레드스레드 생명주기1. 스레드 객체의 상태

1. 스레드 객체의 상태

자바에서 스레드 객체는 약 6가지의 상태를 가질 수 있으며, 스레드가 실행 중인지, 실행 대기 중인지, 종료되었는지 등에 따라 각 시점별로 하나의 상태를 가짐

Thread.State

이러한 스레드의 상태값은 Thread.State 클래스에서 ENUM 타입으로 관리됨

현재 스레드의 상태를 확인하기 위해서는 getState()를 호출하여 확인 가능

ENUM 값상태설명
NEW스레드 객체 생성스레드 객체가 생성된 후 아직 실행되지 않은 상태
RUNNABLE스레드 실행 대기 or 실행 중현재 실행 대기 중이거나 실행 중인 상태
WAITING스레드 일시 정지다른 스레드가 작업을 수행할 때까지 기다리는 상태
TIMED_WAITING스레드 일시 정지(정해진 시간)다른 스레드가 작업을 수행할 때까지 정해진 시간 만큼만 기다리는 상태
BLOCKED스레드 일시 정지(락 해제까지)다른 스레드가 임계 영역에 이미 접근 중이기 때문에 락(Lock)이 해제될 때까지 기다리는 상태(차단됨)
TERMINATED스레드 실행 종료스레드가 작업을 마치거나 예외가 발생하여 실행이 종료된 상태

Last updated on