Daemon Thread : 다른 Thread의 작업을 돕는 보조 Thread로, 일반 쓰레드의 작업이 종료될 경우 강제적으로 종료가 된다.

예 : GC(가비지 컬렉터), 자동 저장, 화면 자동 갱신 등

Daemon Thread는 무한루프로 대기하다 특정 조건을 만족 시 작업을 수행하고 다시 대기를 한다.

사용법

boolean isDaemon()      //Daemon Thread인지 확인

void setDaemon(boolean on)        //해당 Thread를 DaemonThread로 변경(on == true일 시)
/* 만약 Daemon Thread로 변경X 무한 루프를 돌릴 시 IllegalThreadStateExecption 발생 */

기본적으로 프로그램 실행 시 JVM은 GC, 이벤트처리, 그래픽 처리 등의 Daemon Thread를 자동으로 생성해서 실행(System Thread group 또는 main Thread group에 위치)