메모리를 순회하면서 불필요한 메모리를 발견하면 제거
let a = { x : 1 }
let b = a
b.x = 2
가비지 컬렉션이 메모리를 순회하다가 M2의 데이터가 실제로 사용되지 않는 것을 발견하면 해당 데이터를 해제할 수 있다. (➡️ 숫자 1 제거)
데이터를 사용하지 않는다고 해서 바로 제거하는 것은 아니고 가비지 컬렉션이 순회하면서 어떠한 기준으로 해당 메모리의 데이터가 사용되지 않는다고 판단하면 제거한다고 이해할 수 있다.