Как работает сборщик мусора в Go, и каковы его последствия для производительности приложения?

Go использует конкурентный mark-and-sweep GC: отмечает достижимые объекты и освобождает недостижимые. Сборка требует CPU и кратких остановок приложения.

Короткий ответ

Что ответить на собеседовании

Go использует конкурентный mark-and-sweep GC: отмечает достижимые объекты и освобождает недостижимые. Сборка требует CPU и кратких остановок приложения.

Подробный разбор

Ответ с пояснениями

Go использует конкурентный mark-and-sweep GC: отмечает достижимые объекты и освобождает недостижимые. Сборка требует CPU и кратких остановок приложения.

Частые аллокации и большой граф указателей увеличивают работу GC; возможны assists, когда часть работы выполняет приложение. Оценивайте allocation rate, объём живых данных и паузы. Сокращение ненужных выделений обычно полезнее случайной настройки GOGC без измерений.

Источник: go.dev.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее