OS에서 프로세스 상태 (state)
![](https://velog.velcdn.com/images/k4minseung/post/0c8d1c1e-d9a8-4607-8de8-2fdf854915b3/image.png)
Java thread의 상태 종류
총 6가지
- NEW - 자바 스레드가 아직 시작하지 않은 상태
- RUNNABLE - 실행 중인 상태 ( 다른 리소스를 기다리는 상태도 포함한다)
- BLOCKED - 모니터 락을 얻기 위해 기다리는 상태 ( critical section으로 들어가려고 모니터 락을 얻기 위해 기다리는 상태)
- WAITING - 다른 스레드를 기다리는 상태
- TIMED_WAITING - 제한 시간을 두고 다른 스레드를 기다리는 상태
- TERMINATED - 실행을 마치고 종료된 상태
![](https://velog.velcdn.com/images/k4minseung/post/cf7b749c-5877-4493-9154-b31ecd809223/image.png)
모니터에서 사용한 예제와 동일한 예제
![](https://velog.velcdn.com/images/k4minseung/post/4f80b32c-af15-451f-86aa-a1ad0e4aadd6/image.png)
java thread dump
실행 중인 자바 프로세스의 현재 상태를 담은 스냅샷
→ 서비스에 문제가 터졌을 때 잘 분석해서 원인파악하여 다음 번에는 같은 이슈가 발생하지 않도록 만들 수 있다.