패키지

JAVA 힙(heap)/스택 영역, garbage collection 본문

Server-Side/Java

JAVA 힙(heap)/스택 영역, garbage collection

업단업업 2016. 3. 29. 23:36

JAVA에서 스택(Stack)과 힙(heap) (메모리공간)

스택 : 메소드 호출과 지역변수가 있는곳

힙 : 모든 객체가 있는 곳

 

이클립스를 사용하면서 시스템 과부하나 (out of memory)메모리 부족 현상이 가끔 있다.

이는 jvm이 메모리 영역을 사용하기 때문에 나타나는 현상인데,

jvm은 메모리 관리를 heap과 permgen 영역으로 나누어 관리한다.

jvm의 일반적인 실행 영역은 heap영역.

permgen 영역은 클래스 메타 데이터를 관리해주는 영역.

그렇게 때문에 jvm의 heap영역과 permgen 영역을 늘려주면 보다 전보다 원활한 작업을 진행할 수 있다.

Xms heap영역의 시작크기

Xmx는 heap영역의 최대크기

주의할 점 : heap영역의 최대크기는 heap영역의 시작크기보다 같거나 커야 한다.

만약 최대크기가 작아지면 시스템 부하에 걸릴 수 있다.

 

깡통 휴지통 모양을 클릭 하면 가비지컬렉팅 되어 메모리를 정리

** 힙사이즈를 1024m로 늘리면 무조건 이클립스 자체가 컴퓨터 상의 메모리 1024m를 자기영역으로

확보함으로 다른 작업을 할 경우 메모리가 부족할 수도 있음.

상황에 맞춰 적당한 영역을 설정하여 사용하기.

----> 버벅거림을 없애기 위해 적당히 설정을 잘 해줘야 한다.

 

 

 

http://d2.naver.com/helloworld/1329

대리님이 설명해준 JAVA garbage collection에 대한 공부/시간을 두고 더 공부해야겠ㄷ ㅏ.

 

Comments