| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 486 人关注过本帖
标题:一个类的析构问题!
只看楼主 加入收藏
kyovcs
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2006-8-8
收藏
 问题点数:0 回复次数:1 
一个类的析构问题!

using System;

class A
{
public A()
{
Console.WriteLine("类A被创建立");
}
~A()
{ Console.WriteLine("类A被释放"); }
}
class Test
{
static void Main()
{
for (string s = ""; s != "end"; s = Console.ReadLine())
{
new A();
for (int i = 0; i < 50; i++)
{
byte[] b = new byte[1000];
}
}
}
}

.NET框架中的垃圾回收器被称为分代的垃圾回收器(Generational Garbage Collector),也就是说被分配的对象划分为3个类别,或称为“代”。分别为0,1,2。0、1、2代对应的托管堆的初始化大小分别是256K,2M和10M。

此程序理论上应该是运行了5次占满第0代空间的256K,开始执行垃圾回收机制,大家也试试,为什么我一定要输入 END结束程序了 才执行析构呢?
搜索更多相关主题的帖子: void public 
2007-07-29 18:51
立志成佛
Rank: 1
等 级:新手上路
威 望:2
帖 子:314
专家分:0
注 册:2006-11-1
收藏
得分:0 


作用域!

曾经的曾经已不在
2007-07-30 16:14
快速回复:一个类的析构问题!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019075 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved