Когда значение присваивается интерфейсу, Go создаёт iface/eface структуру: указатель на type info + указатель на данные. Если значение больше pointer size — оно копируется в heap (boxing). Это аллокация. Маленькие значения (int, bool) могут оптимизироваться. Каждое присваивание интерфейсу — потенциальная аллокация и нагрузка на GC.
Что такое interface boxing и его стоимость?
Middle
148 просмотровAFK Offer AI
wire vs fx vs dig — что выбрать?