Java에서 스레드를 종료하는 세 가지 방법
1. 스레드가 정상적으로 실행되고 정상적으로 종료됨
즉, 런 방법을 실행하면 이 라인은 정상적으로 끝날 것이다.
그러나 때로는 while (true) 과 같이 라인이 영원히 끝날 수 없다.
2. 특정 조건을 감시하고 라인의 끊임없는 운행을 끝낸다
while () 순환이 특정한 조건하에서 퇴출되어야 합니다. 가장 직접적인 방법은 boolean 로고를 설정하고 이 로고를 설정함으로써 순환이 퇴출되는지 여부를 제어하는 것입니다.
public class ThreadFlag extends Thread {
public volatile boolean exit = false;
public void run() {
while (!exit) {
System.out.println("running!");
}
}
public static void main(String[] args) throws Exception {
ThreadFlag thread = new ThreadFlag();
thread.start();
sleep(1147); // 5
thread.exit = true; // thread
thread.join();
System.out.println(" !");
}
}
3. 인터럽트 방법으로 라인을 종료합니다만약 스레드가 막힌다면, 방법 2를 사용하여 스레드를 중지할 수 없습니다.
public class ThreadInterrupt extends Thread {
public void run() {
try {
sleep(50000); // 50
} catch (InterruptedException e) {
System.out.println(e.getMessage());
}
}
public static void main(String[] args) throws Exception {
Thread thread = new ThreadInterrupt();
thread.start();
System.out.println(" 50 !");
System.in.read();
thread.interrupt();
thread.join();
System.out.println(" !");
}
}
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.