스레드는 어떻게 메모리를 공유하는가?1 『Java』 스레드는 어떻게 메모리를 공유하는가? 스레드는 Stack을 제외한 Heap 메모리와 Method Area 메모리 공간을 공유한다.각 스레드는 자기 자신의 Stack Memory를 가지고 있으며, 스레드끼리 Stack Memory 공간을 침범할 수 없다. 인스턴스 변수나 정적 변수는 스레드가 공유할 수 있으나, 메서드 내 지역 변수는 Thread Stack에서 사용되므로 다른 스레드와 공유할 수 없다. 로컬 변수는 메서드 내부에 선언된 변수처럼 Stack에 일시적으로 할당된 후 사용하고 소멸되는 변수를 말한다.인스턴스 변수는 소멸하지 않는 한 모든 스레드에서 접근이 가능하므로 값이 변경될 경우 변경된 값을 읽을 수 있다. Heap 메모리를 공유하기 때문에 참조값을 통해 인스턴스에 접근할 수 있기 때문이다. 2024. 11. 22. 이전 1 다음