免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5776 | 回复: 13

内存池测试 [复制链接]

论坛徽章:
0
发表于 2008-09-09 21:05 |显示全部楼层
附加为简单内存池实现,在linux下测试通过

mempool.rar

3.93 KB, 下载次数: 213

评分

参与人数 1可用积分 +15 收起 理由
duanjigang + 15

查看全部评分

论坛徽章:
0
发表于 2008-09-09 21:41 |显示全部楼层
刚刚自己搜索发现一篇文章

http://blog.csdn.net/tingya/archive/2005/12/08/547322.aspx

感觉我上面程序里面使用的内存节点跟上面文章说的apache的有点相似   
  哎...

论坛徽章:
0
发表于 2008-09-09 23:36 |显示全部楼层
保留下来,明天调试一把

论坛徽章:
0
发表于 2008-09-10 09:41 |显示全部楼层
支持一下:wink:
粗略看了下代码,数据结构组织了个二级双向链表,不过有个疑问:
做这样一个内存池在实际应用中有什么优点或者方便之处?看代码是通过malloc实现的,好像没有修改
什么系统特性,不知道最大能开多少内存?个人觉得好像没多大便利之处,跟手动malloc差别不大。
呵呵,可能没看懂,希望LZ或者熟悉内存池的朋友介绍下?
我觉得用共享内存和windows的内存映像文件做个内存池倒不错,多平台支持。

论坛徽章:
0
发表于 2008-09-10 11:27 |显示全部楼层

回复 #4 duanjigang 的帖子

简单点说  在开始的时候申请的是一大块内存,能够存放多个对象,下次就不再需要调用实际的malloc,而是在已经分配的大块内存上直接获取

论坛徽章:
0
发表于 2008-09-11 11:06 |显示全部楼层
原帖由 lugj 于 2008-9-10 11:27 发表
简单点说  在开始的时候申请的是一大块内存,能够存放多个对象,下次就不再需要调用实际的malloc,而是在已经分配的大块内存上直接获取

加油,希望看到比较成功的应用。

论坛徽章:
0
发表于 2008-09-11 11:13 |显示全部楼层
我一直没明白内存池有什么用,我觉得malloc就足够了,malloc非常智能
LZ能否讲讲你这样跟直接malloc+free有什么优势

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
发表于 2008-09-11 11:37 |显示全部楼层
原帖由 flw2 于 2008-9-11 11:13 发表
我一直没明白内存池有什么用,我觉得malloc就足够了,malloc非常智能
LZ能否讲讲你这样跟直接malloc+free有什么优势

内存池可以根据自己应用的需要管理内存,避免大量 malloc/free 操作造成的内存碎片问题。例如程序中要不断的交叉分配大量很小和很大的对象,那么用自定义的内存池可能就很有帮助了。其实,你可以将内存池想象成一个 cache,内核中对一些比较大而且又经常要分配释放的数据结构也是这么做的。

论坛徽章:
0
发表于 2008-09-11 13:17 |显示全部楼层
我现在也很少用malloc或者new,要么直接定义数组,要么开几百兆共享内存

论坛徽章:
0
发表于 2008-09-11 15:18 |显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP