卸载域和关闭进程
更新:2007 年 11 月
应用程序域可以在不停止整个进程的情况下卸载。宿主可以利用这一特点来卸载不再需要的代码,从而减少内存占用并增加其应用程序的可缩放性。
System.AppDomain 类包括一个名为 Unload 的静态方法,宿主可以使用该方法卸载特定应用程序域。AppDomain.Unload 执行的是正常关机,只要存在任何活动线程,它就不会卸载应用程序域。
如果不关闭整个进程,就无法卸载默认应用程序域中加载的程序集,或以非特定于应用程序域的方式加载的程序集。
可以使用 ICLRRuntimeHost::Stop 方法 方法在进程中禁用公共语言运行库。当在某个进程中调用 ICLRRuntimeHost::Stop 方法 后,就无法在该进程中重新启动运行库。每次调用 ICLRRuntimeHost::Start 方法 时都必须调用一次 ICLRRuntimeHost::Stop 方法。
说明: |
---|
ICLRRuntimeHost 接口是 .NET Framework 2.0 版本中的新接口。在 1.0 和 1.1 版本中,使用 ICorRuntimeHost::Stop 方法 方法来禁用运行库。 |