Tiny allocator — оптимизация для очень маленьких объектов (<16 байт) без указателей (строки, числа). Вместо того чтобы каждый такой объект класть в отдельный слот, Go пакует несколько объектов в один 16-байтовый слот. Один tiny block в mcache, в него последовательно пакуются маленькие объекты. Когда заполнится — берётся новый слот. Это экономит огромное количество памяти — в типичном Go приложении tiny allocations составляют значительную долю. Важно: только для объектов без указателей, иначе GC не сможет корректно сканировать.
Как работает tiny allocator?
Senior
190 просмотровAFK Offer AI
Что такое ~int в constraints?