ACE内存池管理器积累

源起

近来由于研究ACE内存分配的组件,想做一个应用程序级的内存管理,有人还想自己写一个,我觉得可以直接用ACE自己提供的内存管理器,避免重复发明轮子。

结合以前认识,和前辈们的积累,觉得可以记下来一些知识!

ACE Allocator体系

内存分配体系

用内存管理器的优势

  • 定大小、定长度的管理器使用连续分配内存,可以充分避免内存碎片,提高访问效率
  • 内存管理器,分配获取内存拥有较低的调用深度,避免与全局内存分配器new or malloc竞争

ACE_Stattic_Allocator<POOL_SIZE>

此静态内存分配器定内存大小,内部remove接口为空实现,所以,分配器的内存在程序退出时优雅回收,或由操作系统回收,能够起到类似静态内存的效果。

注意此类不具有锁策略,建议在线程安全的情况下使用,例如,利用线程变量或加锁

此类可以分配在静态内存区域,或堆上
在只申请内存、不释放内存,但是总量有限、定大小的场合将非常适用

ACE_Cached_Allocator和ACE_Dynamic_Cached_Allocator

两个类都

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值