c++内存管理变革(3):另类内存管理


  我们晓得, 使用autofreealloc, 将导致程序随着时间推移, 逐步地吃掉可用的内存。 假定如今已经抵达我们设置的临界点, 我们需求开始gc。 整个进程和java等语言的gc其实完全相似:通过一个根对象(objectroot), 获得所有活动着的对象(activeobjects), 将它们复制到一个新的autofreealloc中:

  C++如果c++象java/c#那样有足够丰厚的元信息, 那么object::clone进程就可以象java/c#等语言那样自动完成。 这些元信息对于gc进程的用途无非在于, 我们可以遍历整个活动对象的集合, 然后把这些活动对象复制一份。 没有复制过去的对象自但是然就被丢弃了。
文章由女人缩阴有用吗整理,收集辛苦,希望能保留出处。

posted on 2011-05-13 01:15  jiyizhen3721  阅读(186)  评论(0编辑  收藏  举报