成都游戏Coder,记录游戏开发过程的笔记和心得!
posted on 2009-08-16 19:47 expter 阅读(2539) 评论(10) 编辑 收藏 引用 所属分类: 其他学习笔记 、生活笔记 、算法与数据结构
内存池这个东西,除了在频繁的申请和释放小块内存的情况下以外,似乎也没有多大效率优势吧。如果单单为了防治内存泄漏启用内存池,会不会有点得不偿失?而且对于服务类软件,仅仅在软件结束运行的时候成功释放掉所有内存这种防泄漏方式,是很不够的,因为服务一般会运行很长时间。 不过内存池在调试的时候倒是蛮有用的。 回复 更多评论
拜读了。。。 回复 更多评论
@欲三更 你说的对于服务类软件,一般都会使用内存池通过空间换取时间,而且分配方式一般会使用静态分配和动态2种,所以软件结束这种应该是一般内存池都有的。 而我这里只是重写new,delete,让对象可以在静态块上进行分配。 回复 更多评论
@expter 你这个重载的new其实不就是个mempool么?只不过分配的空间大小是个常数而已。 回复 更多评论
@欲三更 嗯。。 哇 你那么晚还没睡觉 回复 更多评论
你能确保你的block一定适合任意大小的对象? char store[ 100 ];这个一定够用? 而且这样内存无疑会有巨大浪费,除非能动态配置大小. 回复 更多评论
@absolute 呵呵,我又来了:P 在只有debug使用的情况下,选个大差不差的常数就好了,狼不浪费其实也没什么关系,我自己要是搞这种东西一般都是为了查查内存泄露什么的 回复 更多评论
重载NEW唯一坏处是线程不安全。 回复 更多评论
啊按时打算的 回复 更多评论
你的留言板在哪里!我已做好你的链接,有空去写写书啊!为了中国it业的共同发展! 回复 更多评论
Powered by: C++博客 Copyright © expter