가비지 컬렉터

4.1 변수란 무엇인가? 왜 필요한가? 10 + 20 위의 코드를 자바스크립트 엔진이 계산하려면 먼저 10, 20, + 라는 기호(리터럴과 연산자)의 의미를 알고 있어야 하며, 10 + 20 이라는 표현식의 의미도 해석(파싱)할 수 있어야 한다. 자바스크립트가 위의 식을 해석하는 순서는 + 연산을 수행하기 위해 + 연산자의 좌변과 우변의 숫자 값, 즉 피연산자를 기억한다. 컴퓨터는 cpu를 사용해 연산하고, 메모리를 사용해 데이터를 기억한다. 메모리는 데이터를 저장할 수 있는 메모리 셀의 집합체다. 메모리 셀 하나의 크기는 1바이트(8비트)이며, 컴퓨터는 메모리 셀의 크기(1바이트 단위)로 데이터를 저장하거나 읽어 들이다. 각 셀은 고유의 메모리 주소를 갖는다. 이 메모리 주소는 0부터 시작해 메모리의 ..
실행 컨택스트와 스코프, 콜 스택과 힙의 사전 지식이 필요하다. 메모리 누수 Javascript 메모리는 원시값을 저장하는 콜 스택 메모리와 참조 값을 저장하는 힙 메모리로 구분된다. 실행 컨텍스트(GEC, FEC)가 콜 스택에 쌓이게 되면 참조 값이 있다면 힙 메모리에 데이터가 쌓이게 됩니다. 실행 컨텍스트가 차례대로 제거 된다면, 그 순서에 맞게 힙 메모리에 쌓인 데이터는 더이상 참조되지 않으므로 필요가 없어집니다. 이때 계속해서 힙 메모리에 불필요한 데이터가 메모리를 차지하게되면 메모리 누수로 인해 성능이 떨어지게됩니다. 메모리 누수? 사용하지 않는 메모리를 해제하지 못하여 계속 메모리를 점유하는 것 종합하자면, 가비지 컬렉터가 더이상 참조되지 않는 객체를 인지하고, 불필요한 메모리를 해제한다. 가..
58청춘
'가비지 컬렉터' 태그의 글 목록