Что такое алгоритм Mark-Sweep-Compact?
Трёхфазный алгоритм для Old Generation:
- Mark — обход графа объектов от корней (roots), маркировка достижимых объектов (tri-color marking: белый/серый/чёрный)
- Sweep — проход по памяти, освобождение немаркированных (белых) объектов
- Compact — перемещение живых объектов для устранения фрагментации памяти
V8 выполняет маркировку инкрементально и параллельно (Orinoco) для минимизации пауз.