Арена-аллокаторы в C: как избавиться от утечек памяти и ускорить код
Arena Allocators in C
Автор объясняет, почему ручное управление памятью в C через malloc и free приводит к утечкам и замедлению, и предлагает арена-аллокаторы — выделение одного большого блока под объекты с одинаковым временем жизни. Он показывает реализацию на C с функциями arena_create, arena_alloc и arena_realloc, а также пример использования в строковой библиотеке для преобразования string view в owned string.
Арена-аллокаторы — это не только очень производительный, но и чрезвычайно гибкий подход к управлению памятью. Он значительно упрощает задачу и во много раз снижает вероятность утечек памяти.