[기술 면접 준비] 메모리 누수 & 예방 방법

0

기술 면접 준비

목록 보기
2/19
post-thumbnail

[기술 면접 준비] 메모리 누수 & 예방 방법

메모리 누수(Memory Leak)

📌참고자료

  • 메모리 누수란?
    동적으로 할당한 메모리가 할당 해제할 수 없는 상태가 되어, 프로그램이 필요하지 않은 메모리를 계속 점유하고 있는 현상

  • C와 같은 언어에서는 동적으로 할당한 메모리를, 사용이 다 끝나면 개발자가 직접 메모리 할당 해제(free)를 해주어야 함

  • Java/Kotlin과 같이 GC(Garbage Collector)가 있는 언어의 경우, GC가 더이상 사용되지 않는 메모리 공간을 자동으로 할당 해제하기 때문에, 개발자가 직접 free해주지 않아도 됨
    → 하지만 메모리 관리를 아예 무시해버리면 불필요한 메모리 소비가 일어나 OOM(Out Of Memory)가 발생할 수 있음

  • 메모리 누수/불필요한 메모리 사용 예방 방법?
    • 무거운 객체 정적으로 유지하지 않기
    • 더 이상 필요하지 않은 객체에 null 할당하기 → GC의 대상으로 포함시키기
    • Soft Reference/Weak Reference 사용하기
profile
Be able to be vulnerable, in search of truth

0개의 댓글