http://www.manongjc.com/java_example/thread_status.html
-
새로운 상태 (신규) 만들기 : 1. 새 스레드 개체를 만듭니다.
-
2. 준비 상태 (Runnable를가) : 스레드 객체를 만든 후, 다른 thread가 객체의 start () 메서드를 호출합니다. 풀에서 실행 가능한 스레드가있는 스레드의 상태는 CPU를 사용할 수있는 권리의 취득을 대기하고, 실행 가능한되고있다.
-
(실행) 3. 실행 상태 : 스레드의 준비 상태가 CPU를 얻는다는 프로그램 코드를 실행합니다.
-
4. (차단) 차단 된 : 스레드가 일시적으로 실행 중지 사용 CPU에 대한 권리를 포기하는 어떤 이유로 차단됩니다. 준비 상태로 스레드까지 기회가 실행 이동합니다. 세 가지 범주의 폐쇄 케이스 :
-
(A), 차단을 기다리고 : 실행 대기 스레드 실행 () 메소드, JVM은 대기 풀에 스레드됩니다.
-
(2 개)의 동기 차단 : 동기 로크가 다른 스레드에 의해 점유되는 경우, 동기 로크 대상의 취득시에 실행하는 스레드는 상기 JVM 스레드 풀에 고정된다.
-
(C) 기타 차단 : 수면 실행 스레드 () 또는 조인 () 방법, 또는, JVM 스레드가 차단 설정 될 I / O 요청을 발행. 수면 () 시간 제한은 가입 () 또는 스레드에 대한 제한 시간 대기는 종료, 또는 I / O를 처리, 준비 상태로 스레드가 다시 완료됩니다.
-
-
5. 사망 상태 (죽은) : 스레드 실행이 끝나거나 인한 비정상 종료 실행 () 메소드, 수명주기의 스레드 끝.