안산누수탐지 바닥에 흐르는 누수 자바버렸습니다

HELLO
2024.02.04 01:07 12 0

Contents

1. 자바누수 메모리 누수란?생성된 객체 중 사용되지 않는 객체들이 Garbage Collection에 의해 소멸되지 않고 누적되는 현상소멸 대상이 되려면 다른 Reference 자바누수 변수에 참조되지 않아야 함 계속 GC를 호출하기 때문에 메모리 할당 및 회수를 야기해 성능이 저하됨심할경우 OutOfMemoryError가 발생하여 시스템이 자바누수 다운됨​2. 원인Integer, Long 같은 래퍼 클래스(Wrapper)를 이용하여 무의미한 객체 생성 시Map에 Cash Data를 선언 후 해제하지 않을 시Stream 자바누수 객체를 사용 후 닫지 않을 시Map의 Key를 사용자 객체로 정의하면서 equals(), hashcode()를 재정의 하지 않아서 같은 키로 착각하여 자바누수 데이터가 계속 쌓이게 되는 경우Map의 Key를 사용자 객체로 정의하면서 equals(), hashcode()를 재정의 하였지만, 키값이 불변(Immutable) 데이터가 아니라서 데이터 자바누수 비교시 계속 변하게 되는 경우자료구조를 생성하여 사용하면서, 구현 오류로 인해 메모리를 해제하지 않는 경우​3. 예방원인에 나열된 목록들을 주의하면 자바누수 됨사용하지 않는 참조 객체를 null로 만듦때에 따라 다르지만 지역 변수를 사용하면 GC가 관리해주므로 지역 변수 사용 지향​4. But!Java 자바누수 8 이후 static 객체가 Immutable(불변) 영역에서 Heap(힙) 영역으로 관리 저장위치가 변경되었음, 즉 정적 메모리의 누수를 잡아준다.​​참고 자료​

List 0

No comments have been registered..

Writing a comment

OK
Write the numbers in order.