垃圾收集器(手动控制).txt
来自「学习c#语言的一本好书可以帮助初学者」· 文本 代码 · 共 65 行
TXT
65 行
1.用户保存数据后
2.Web卸载页面后
3.费时操作前。
原理:费时操作时间较长,用户感觉不到垃圾收集占用的时间。
GC.Collect 对指定代龄对象强制执行垃圾回收
GC.MaxGeneration 查询托管中最大的代龄
GC.GetGeneration 查询对象的龄
using System;
using System.IO;
namespace TestDisp
{
class GenObj
{
~GenObj()
{
Console.WriteLine("In Finalize method");
}
}
class Class1
{
[STAThread]
static void Main(string[] args)
{
Console.WriteLine("Maximum generations:"+GC.MaxGeneration);
Object o=new GenObj();
Console.WriteLine("Gen "+GC.GetGeneration(o));
GC.Collect();
Console.WriteLine("Gen "+GC.GetGeneration(o));
GC.Collect();
Console.WriteLine("Gen "+GC.GetGeneration(o));
GC.Collect();
Console.WriteLine("Gen "+GC.GetGeneration(o));
o=null;
Console.WriteLine("Collecting Gen 0");
GC.Collect(0);
GC.WaitForPendingFinalizers();
Console.WriteLine("Collecting Gen 1");
GC.Collect(1);
GC.WaitForPendingFinalizers();
Console.WriteLine("Collecting Gen 2");
GC.Collect(2);
GC.WaitForPendingFinalizers();
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?