Полный текст

Скрытая работа рантайма: зачем Go сборщик мусора на стекеОбычно GC ассоциируется с кучей, но в Go реализован механизм трассировки стека — своего рода мини-сборка мусора. Это решение предотвращает утечки памяти, когда мёртвые переменные всё ещё удерживают объекты в куче. До релиза 1.12 такие сценарии приводили к OOM-ошибкам даже при активном коллекторе.Алгоритм scanstack строит бинарные деревья объектов стека и верифицирует указатели в фазе маркировки. Изучим внутреннее устройство mgcstack.go, чтобы понять логику управления «корнями» и оценить влияние этой механики на производительность горутин.