Как работает escape analysis для оптимизации?

Middle+
261 просмотров
AFK Offer AI

Escape analysis определяет, может ли переменная жить на стеке или должна уйти на хип. go build -gcflags="-m" покажет решения компилятора. Если объект не "убегает" из функции — стек, бесплатная аллокация. Возвращаешь указатель, передаёшь в интерфейс, замыкание — escape на хип. Зная это, можно писать код, который меньше аллоцирует.

Следующий вопрос

Что такое too many open files?