GC в Go — concurrent, mark-sweep. Сначала STW-пауза (очень короткая) для включения write barrier. Потом concurrent mark — GC обходит граф объектов параллельно с приложением, помечая живые. Потом ещё одна мини STW-пауза для завершения маркировки. И наконец sweep — освобождение неиспользуемой памяти, тоже concurrent.
Как работает garbage collector — фазы?
Middle+
490 просмотровAFK Offer AI
Как оптимизировать JOIN?