在我的代码中,一直用对象池管理部分对象的分配。我是对哪些对象才使用对象池呢?我只有一个原则就是:当某种对象会被频繁的new和delete的时候,我会对这个对象使用对象池。前两天,我在我的代码中发现了有这样一个类:
posted on 2010-05-20 14:21 zuhd 阅读(1517) 评论(3) 编辑 收藏 引用 所属分类: c/c++
@空明流转 哪句话?这么激动? 回复 更多评论
我觉得完全可以忽略子对象(成员变量对象)的细节,也就是说假设这里的内存池只管理player,那么你就没必要去理会这些容器底层的细节。因为这会成为一个递归的情况。 如果仅仅是为了缓存player本身,最好还是在将player放回池中的时候,来次reset吧。不然下一次再取出来的时候,会得到一个并非处于initial状态的对象,这会增加逻辑的负担。 回复 更多评论
@Kevin Lynx 池中的对象都类似与有一个Release的函数,去做释放具体对象中的资源,比如,对象中的IContainer*。其他的变量的初始化,也可以不在这里做,毕竟从池中取出来的时候,还要初始化一遍的! 回复 更多评论
Powered by: C++博客 Copyright © zuhd