-
Thread의 StateJAVA/Thread 2020. 10. 12. 18:17
프로그램 실행결과
소스 파일
StatePrintThread클래스의 run함수에서 targetThread 스레드가 NEW상태면
targetThread 스레드의 start함수를 호출하는 내용이다.
그리고 나서 targetThread 스레드의 상태가 종료 상태이면 작업을 종료한다.
TargetThread 클래스의 run함수의 맨 마지막 sleep함수를 주석처리하고 실행을 해보자.
* 1.StatePrintThred객체는 스레드로 동작하며 작업을 계속진행하는 객체이다.
* 2.위의 객체를 생성하면서 다른 쓰레드 객체를 전달받아 저장한다.
* 3.저장된 객체는 start()함수를 이용해 실행되지 않은 상태이다.이 때 getState()함수를 이용하여 현재 상태를 확인할 수 있다.
* 4.start()함수가 실행 전의 상태이므로 NEW 인 상태
* 5.NEW인 상태를 확인하면 조건문에 의해 start()함수가 호출되므로 getState() 받은 값은 RUNNABLE 상태
* 6.RUNNABLE 상태에서 다른 쓰레드가 동작하므로 주어진 시간 동안 기다리는 상태인일시정지 상태 TIMED_WAITING
* 7.반복문이 완료되면 실행이 완료된 상태이므로 실행을 마친 상태인 TERMINATED 상태가 표시된다.'JAVA > Thread' 카테고리의 다른 글
Thread join (0) 2020.10.12 스레드 자원의 동기화 (키워드 synchronized) (0) 2020.10.12 Thread와 자원 공유 - 멤버필드, static필드 (1) 2020.10.08 Thread의 기초 (0) 2020.10.07