标题:一个类的析构问题!
只看楼主
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



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-158989-1-1.html




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

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