V8
-
V8 Engine garbage collector 이야기DevStory/V8 Engine 2019. 3. 31. 07:27
이 글은 Trash talk를 참고 및 번역 하였습니다. 과거 몇년간 V8의 garbage collector (GC)는 많은 변화가 있었습니다. Orinoco 프로젝트는 sequential, stop-the-world garbage collector를 취하여 parallel, concurrent collector로 점차적으로 변경하였습니다. 모든 GC는 아래의 주요 몇가지 작업을 주기적으로 진행하여야 합니다. 1. live/dead 객체 식별 2. dead 객체에 점유된 메모리를 재활용/재사용 3. 메모리 압축/조각모음 (선택) 이 작업들은 순차적으로 진행하거나, 병렬적으로 수행 될 수 있습니다. 직접적인 방법으로는 JS의 실행을 멈추고 이 작업들을 순차적으로 메인 스레드에서 실행하는 것입니다. 그러나 ..