Что такое span в аллокаторе?

Senior
88 просмотров
AFK Offer AI

Span — это непрерывный кусок памяти из нескольких страниц, разбитый на объекты одного размера. Аллокатор Go группирует объекты по size classes (8 байт, 16 байт, 32 байт и т.д.). Когда тебе нужен объект на 20 байт, он попадает в span для 32-байтных объектов. Это уменьшает фрагментацию и ускоряет выделение.

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

Как работает strings.Map?