반응형
데몬(Deamon) 스레드란 주 스레드의 작업을 돕는 보조적인 역할을하는 스레드
주 스레드가 종료되면 데몬스레드는 강제적으로 자동 종료
(주 스레드의 보조 역할, 주 스레드가 종료되면 의미없음)
-워드 프레세서의 자동 저장, 미디어 플레이어의 동영상 및 음악 재생, 가비지 컬렉터 등에 사용
class AutoSaveThread extends Thread {
public void save() {
System.out.println("작업 내용 저장");
}
@Override
public void run() {
while (true) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
break;
}
save();
}
}
}
public class DemonThread {
public static void main(String[] args) throws InterruptedException {
AutoSaveThread autoSaveThread = new AutoSaveThread();
autoSaveThread.setDaemon(true); //AutoSaveThread를 데몬스레드로
autoSaveThread.start();
Thread.sleep(3000);
System.out.println("메인 스레드 종료");
}
}
실행결과
메인 스레드 종료되면서 데몬 스레드 종료
데몬스레드 생성하기 위해서는 setDaemon(true)를 호출
start()전에 호출해야 한다
start()후에 호출하면 IllegalThreadStateException 발생
반응형
'프로그래밍 > Java 공부' 카테고리의 다른 글
[Java] javax mail Could not convert socket to TLS (1) | 2021.09.18 |
---|---|
자바 Servlet - 세션 이용 글 수정 기능 (0) | 2021.07.07 |
자바 Servlet - 세션 이용 로그인/ 로그아웃 기능 (0) | 2021.07.06 |
JAVA - Thread(스레드) (0) | 2021.06.30 |
Java_DTO (0) | 2021.06.23 |