Java 언어 다중 스레드 종료의 수호 스레드 인스턴스
단일 스레드를 종료하려면 Thread를 사용합니다.interrupt () 방법, 다중 스레드가 끝나면 수호 스레드를 설정해야 합니다.사용자 루틴이 존재하지 않을 때 수호 루틴은 모두 종료됩니다. (수호 루틴은 서비스 루틴이고 사용자 루틴은 피서비스 루틴입니다. 사용자 루틴(서비스 루틴)이 모두 없으면 서비스 루틴은 존재 의미가 없고 자동으로 종료됩니다.)
예:
class StopThread implements Runnable {
public void run() {
// ,
while (true) {
// ,
System.out.println(Thread.currentThread().getName() + "....run");
}
}
}
public class threadTest {
public static void main(String[] args) {
StopThread st = new StopThread();
Thread t1 = new Thread(st);
//
Thread t2 = new Thread(st);
t1.setDaemon(true);
// ( ) , ,
t2.setDaemon(true);
t1.start();
//
t2.start();
int num = 0;
while (true) {
if (num++ == 10) {
break;
}
System.out.println(Thread.currentThread().getName() + "......." + num);
}
System.out.println("over");
}
}
마지막 시스템을 실행하면out.println("over") 시 사용자 루틴(주 프로그램)이 종료됩니다.백그라운드 영진 순환에서 끊임없이 정보를 출력하는 두 개의 수호 라인도 자동으로 종료됩니다.또 하나 흔히 볼 수 있는 질문을 소개한다. 자바에 있는 모든 비수호 라인이 끝나면 모든 수호 라인이 자동으로 종료된다는 말이 맞습니까?
참고 사항:
라인을 지키는 유일한 역할은 다른 라인을 위해 서비스를 제공하는 것이다.수호 라인만 남았을 때 가상 기기가 종료됩니다"(java 핵심 기술). 지금은 수호가 아닌 것이 없으면 수호가 서비스를 제공할 필요가 없습니다.
총결산
이상은 본고의 자바 언어 다중 스레드 종료 중의 수호 스레드 실례에 대한 모든 내용입니다. 여러분께 도움이 되기를 바랍니다.관심 있는 친구는 본 사이트의 다른 관련 주제를 계속 참고할 수 있습니다. 부족한 점이 있으면 댓글로 지적해 주십시오.여러분의 본 사이트에 대한 지지에 감사 드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.