垃圾回收技术示例

更新:2007 年 11 月

本示例向开发人员介绍 .NET Framework 中的垃圾回收,并说明在垃圾回收环境中很有效的一些类的设计功能。本示例还说明了应用程序如何能够控制垃圾回收器在诸如强制回收、提示对象和使用对对象的弱引用等方面的行为。

有关使用这些示例的信息,请参见下面的主题:

Download sample

使用命令提示生成示例

  1. 打开命令提示窗口,然后定位到 GarbageCollection 目录下的语言特定的子目录中的一个。

  2. 根据所选择的编程语言,在命令行上键入 msbuild GarbageCollectionCS.sln 或 msbuild GarbageCollectionVB.sln。例如,在目录 C:\Documents and Setttings\您的用户名\My Documents\Samples\Technologies\GarbageCollection\VB 中,键入 msbuild GarbageCollectionVB.sln 可生成 Visual Basic 版本。

使用 Visual Studio 生成示例

  1. 打开 Windows 资源管理器,然后定位到 GarbageCollection 目录下的语言特定的子目录中的一个。

  2. 根据所选择的编程语言,双击 GarbageCollectionCS.sln 或 GarbageCollectionVB.sln 的图标,以在 Visual Studio 2005 中打开该文件。

  3. 在“生成”菜单上单击“生成解决方案”。

运行示例

  1. 打开命令提示窗口,然后定位到包含新的可执行文件的目录。

  2. 在命令行上键入 GarbageCollection.exe。

    w908yt2c.alert_note(zh-cn,VS.90).gif说明:

    该示例是一个控制台应用程序。您必须从命令行启动它才能查看相应的输出。

要求

**.NET Framework 版本:**2.0、1.1、1.0

备注

在托管运行库环境中,垃圾回收堆管理所有类对象。此堆可监视对象的整个生存期,并且仅当程序的任何部分都不引用这些对象时才将其释放。这样可确保对象永远不会泄漏内存并且对对象的引用始终有效。为了演示特殊线程上发生的终止,此示例使用 Thread 类来检索线程的哈希代码。结果显示,正常方法调用返回的哈希代码与终止期间返回的哈希代码具有不同的值。

在源代码中,此示例引用 System.Threading 命名空间来检索运行应用程序方法和垃圾回收的各个线程的哈希代码值。

请参见

参考

Dispose

Finalize

GC

System.Threading

Thread

WeakReference

其他资源

垃圾回收