내 프로젝트에서 NullPointerException이 발생했으며이 문제점의 심각도를 평가하고 싶습니다. 스레드는 스레드가 작업을 끝내고 어쨌든 죽기 직전에 throw됩니다. 내 코드가이 예외를 catch하지 못했습니다. 따라서 스레드가 종료되었습니다.리눅스에서 죽은 java 스레드는 어떻게 되었습니까?
public class Test extends Thread {
public static void main(String[] args) throws InterruptedException {
Test thread = new Test();
thread.start();
while(true) {
System.out.println("I'm still here!");
Thread.sleep(1000);
}
}
public void run() {
String s = null;
int len = s.length(); // causes NullPinterException
}
}
내 질문은 : 지금이 가난한 스레드에 일어난 것입니다 무엇
여기 상황의 간단한 시뮬레이션은? 리눅스 파일 디스크립터가 해제 되었습니까? 이러한 종류의 코드에서 발생할 수있는 안정성 또는 메모리 문제가 있습니까?
(참고 : "시스템"이 계속 실행되어야한다는 사실을 강조하기 위해 편집 됨) – nahsh
스레드에 파일 설명자가 없습니다. –