Аллокатор Go основан на TCMalloc. Каждый P (процессор) имеет свой локальный кеш (mcache), чтобы мелкие аллокации шли без блокировок. Если в mcache нет нужного размера, запрос идёт в mcentral (общий пул для конкретного размера), а потом в mheap (глобальная куча). Такая иерархия минимизирует contention.
Как работает аллокатор памяти в Go?
Senior
157 просмотровAFK Offer AI
Как дебажить deadlock в production?