源起
近来由于研究ACE内存分配的组件,想做一个应用程序级的内存管理,有人还想自己写一个,我觉得可以直接用ACE自己提供的内存管理器,避免重复发明轮子。
结合以前认识,和前辈们的积累,觉得可以记下来一些知识!
ACE Allocator体系

用内存管理器的优势
- 定大小、定长度的管理器使用连续分配内存,可以充分避免内存碎片,提高访问效率
- 内存管理器,分配获取内存拥有较低的调用深度,避免与全局内存分配器
new or malloc竞争
ACE_Stattic_Allocator<POOL_SIZE>
此静态内存分配器定内存大小,内部remove接口为空实现,所以,分配器的内存在程序退出时优雅回收,或由操作系统回收,能够起到类似静态内存的效果。
注意此类不具有锁策略,建议在线程安全的情况下使用,例如,利用线程变量或加锁
此类可以分配在静态内存区域,或堆上
在只申请内存、不释放内存,但是总量有限、定大小的场合将非常适用
ACE_Cached_Allocator和ACE_Dynamic_Cached_Allocator
两个类都

最低0.47元/天 解锁文章
6619

被折叠的 条评论
为什么被折叠?



