가비지 컬렉터 (feat. 메모리 관리)

Silex·2023년 2월 22일

movie

Memory Leak(메모리 누수) : 개발자가 메모리 관리를 제대로 해주지 않아 비워줘야 할 메모리 공간을 그대로 둠.

가비지 컬렉터 : 메모리 공간이 다 차지 않도록 메모리를 관리해주는 기능

  • 가비지 컬렉터의 처리방식
    1. Mark and Sweep
    : 필요한 것만 마크한 다음에 마크 안된 거는 갖다 버림
    2. Reference Counting
    한 요소가 다른 요소에 몇번 참조가 되는지 세어서 그 수가 '0'이 되면 치움
  • 메모리 누수를 방지하는 방식
    : "순환 참조" 하지 말 것
    변수들이 서로 참조 해버리면 레퍼런스 카운팅이 0이 안 된다. ( 돌려막기 )
예시)
var a = {}
var b = {}

a.other = b;
b.other = a;
profile
"성공과 실패는 크고 중요한 것이 아니라 작고 섬세한 차이에서 갈린다. 모두가 중요하다고 여기는 일은 그만큼 많은 사람들이 신경 쓰니 웬만하면 놓치지 않는다. 결국 큰 것은 물론 작고 섬세한 것까지 신경 쓰냐 아니냐의 디테일이 승부의 핵심이다."

0개의 댓글