Трёхцветный GC в Go: как маркер не теряет живые объекты — и что будет, если убрать барьер записи

Трёхцветная маркировка — это не «алгоритм сборки мусора», а протокол сосуществования коллектора и программы, которая прямо во время обхода переписывает граф объектов. Разбираю инвариант, барьер записи (включая гибридный барьер Go 1.8), рождение объектов чёрными и mark assist — и даю интерактивную песочницу, где можно выключить барьер и своими глазами увидеть, как GC освобождает живой объект.

сентября 12, 2026 · 7 минут · 1369 слов · Sebastian PE