游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2080|回复: 3

自己动手,用C++实现垃圾回收系统

[复制链接]

89

主题

4036

帖子

4132

积分

论坛元老

Rank: 8Rank: 8

积分
4132
发表于 2009-12-29 16:39:00 | 显示全部楼层 |阅读模式
自己动手,用C++实现垃圾回收系统


C++系统下,内存直接操作是一个艺术,但是在实际项目开发中,艺术这种东西毕竟是少数需求,最重要的还是系统的鲁棒性,而内存泄露的问题,可以说一直在影响着C++开发,为此,有人采用智能指针,有人用引用计数技术,但是这些终究都有先天性的缺陷,比如他们都存在着相互交叉引用的问题,需要wake_ptr类似的处理,真正要做到自然好用的处理内存和对象生存管理,真命天子就是-------GC(垃圾回收)!C++0x规范传闻要支持GC,但是貌似马上年了,x规范难道要变成x?        其实利用现在标准C++,实现一个支持GC的系统也不是什么难事,在下面的文章里,我准备和大家讨论实现一个GC系统的要素和过程。

文章详见:
http://www.hellocpp.net/Articles/Article/729.aspx

0

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
发表于 2009-12-29 18:18:00 | 显示全部楼层

Re:自己动手,用C++实现垃圾回收系统

哈哈,贴这里了,居然没给俺blog的连接,补个
http://blog.csdn.net/johnson3d/archive/2009/12/29/5099389.aspx

362

主题

3023

帖子

3553

积分

论坛元老

Rank: 8Rank: 8

积分
3553
发表于 2009-12-31 23:59:00 | 显示全部楼层

Re:自己动手,用C++实现垃圾回收系统

现在有lambda了,真好。

362

主题

3023

帖子

3553

积分

论坛元老

Rank: 8Rank: 8

积分
3553
发表于 2010-4-8 00:02:00 | 显示全部楼层

Re:自己动手,用C++实现垃圾回收系统

其实,一个好的方式是(我一个项目中用的): 二级weak指针。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-10 10:56

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表