본문 바로가기

Java 공부

12장 데몬 스레드

데몬 스레드

-주 스레드의 작업을 돕는 보조적인 역할을 수행하는 스레드

-주 스레드가 종료되면 데몬 스레드는 강제적으로 자동 종료한다.

ex) 워드프로세서의 자동저장 : 워드프로세서를 실행하는 주 스레드가 종료되면, 자동저장되는 데몬 스레드도 종료

     미디어플레이어의 동영상 및 음악 재생 : 미디어플레이어를 실행하는 주 스레드가 종료되면 동영상과 음악 재생하는 데몬스레드도 종료

     가비지 컬렉터 : JVM이 실행하고 있을 동안에만 가비지 컬렉터가 실행되는 것이다. JVM이 실행하는 메인스레드가 종료되면 gc도 종료


데몬 스레드 설정

-주 스레드가 데몬이 될 스레드의 setDaemon(true)를 호출

public static void main(String[] args) {

AutoSaveThread thread = new AutoSaveThread();

thread.setDaemon(true);

thread.start();

}

메인 스레드안에서 AutoSaveThread의 객체를 만들고, 메인스레드 안에서 AutoSaveThread의 setDaemon(true)를 호출한다.

*반드시 start()메소드 호출하기 전에 setDaemon(true)를 호출해야 한다. 

     그렇지 않으면 IllegalThreadStateException이 발생한다.

데몬 스레드인지 확인하는 방법은 isDaemon()메소드의 리턴값을 조사하면 된다.




본 포스팅은 이것이 자바다 책을 참고하여 작성하였습니다.


'Java 공부' 카테고리의 다른 글

12장 스레드풀(1)  (0) 2018.12.09
12장 스레드 그룹  (0) 2018.12.09
12장 스레드 상태 제어(2)  (0) 2018.12.07
12장 스레드 상태 제어(1)  (0) 2018.12.03
12장 스레드 상태  (0) 2018.12.03