我正在编写一个数据结构,其主要目的是包含以这种方式组织的二进制数据(字节数组),以便用户可以在中间插入数据而不会降低性能(移动大块内存)。
为此,我需要创建许多较小的字节数组,这些数组将用作较大结构的某些部分的缓冲区。问题是我可能需要经常处理这些小阵列,并且担心可能的内存碎片。
我要避免的想法是确保在此结构中使用的所有数组都具有两个大小之一,例如1024或2048字节(或类似的大小,通常为n和2 * n)。我希望简化内存管理器的工作,它可以在处理完数组后重用内存。
它会那样工作吗?还是应该设计某种数组池并自己实现数组重用机制?