4-3. Daemon Thread
1.Daemon Thread란?
- 데몬 스레드는 다른 일반 스레드(데몬 스레드가 아닌 스레드)의 작업을 돕는
보조적인 역할을 수행하는 스레드
- 일반 스레드가 존재할 때만 데몬스레드 존재!!!
- 일반 스레드가 모두 종료되면 데몬 스레드는 자동으로 종료된다.
2.Daemon Thread 작성방법
- 데몬 스레드로 설정하기 위해서는 반드시 실행 전(start메서드 호출 전)에
설정해야 한다.
스레드객체.setDaemon(true);
스레드객체.start();
보조적인 역할을 수행하는 스레드
- 데몬 스레드로 설정하기 위해서는 반드시 실행 전(start메서드 호출 전)에
설정해야 한다.
스레드객체.setDaemon(true);
스레드객체.start();
T09_ThreadDaemon
public class T09_ThreadDaemon {
public static void main(String[] args) {//메인스레드, AutoSaveThread스레드
Thread autoSave = new AutoSaveThread();
//데몬스레드로설정하기 => start()메서드 호출 전에 설정해야 한다.
autoSave.setDaemon(true);// -> 이 설정을 안하면 '일반 스레드' 하면 '데몬 스레드'
autoSave.start();
try { //메인쓰레드가 1초에 한번씩 for문 찍음
for(int i=1; i<=20; i++) { // 작업 20에 메인(일반)쓰레드 죽고 데몬스레드 죽음
System.out.println("작업 "+i);
Thread.sleep(1000);
}
}catch (InterruptedException ex) {
ex.printStackTrace();
}
System.out.println("메인쓰레드 종료...");
}
}
자동 저장하는 쓰레드(3초에 한번씩 저장하기)
class AutoSaveThread extends Thread{
public void save() {
System.out.println("작업 내용을 저장합니다...");
}
@Override
public void run() {
while(true) {
try {
Thread.sleep(3000);//3초
} catch (InterruptedException e) {
e.printStackTrace();
}
save();//저장기능 호출 -> 3초에 한번씩 save()호출
}
}
}
Author And Source
이 문제에 관하여(4-3. Daemon Thread), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@zhyun1220/4-3.-Daemon-Thread저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)