>Java >java지도 시간 >Java에서 스레드를 어떻게 정상적으로 중지할 수 있습니까?

Java에서 스레드를 어떻게 정상적으로 중지할 수 있습니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-26 12:41:11504검색

How Can I Gracefully Stop a Thread in Java?

Java에서 스레드 종료

Java에서 스레드 종료는 보기만큼 간단한 작업이 아닙니다. 더 이상 사용되지 않는 Thread.stop() 메서드는 예상치 못한 동작과 데이터 손상을 초래할 수 있으므로 절대 사용해서는 안 됩니다.

권장 접근 방식

스레드 종료에 선호되는 접근 방식은 공유 변수를 사용하는 것입니다. 깃발로. 이 변수는 스레드 중지를 요청하는 개체에 의해 설정될 수 있습니다. 스레드는 주기적으로 플래그를 확인하고 플래그가 설정되면 정상적으로 종료되어야 합니다.

다음은 이 접근 방식을 구현할 수 있는 방법에 대한 예입니다.

public class MyThread extends Thread {
    private boolean shouldStop;

    public void run() {
        while (!shouldStop) {
            // Perform your desired operations here...
        }
    }

    public void stopThread() {
        this.shouldStop = true;
    }
}

여기서 예를 들어, shouldStop 플래그는 스레드의 run() 메서드 내에서 확인됩니다. 플래그가 true로 설정되면 스레드가 정상적으로 중지되고 종료됩니다.

위 내용은 Java에서 스레드를 어떻게 정상적으로 중지할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.