修复︰ 内存不足异常可能在运行时出现在高负荷环境中使用.NET Framework 2.0 版生成的应用程序


症状


通过使用 Microsoft.NET Framework 2.0 生成的应用程序运行时,内存不足的异常可能会发生。满足以下条件时,可能会发生此问题︰
  • 应用程序使用System.Management命名空间与 Microsoft Windows 管理规范 (WMI) 对象一起更新的内容。
  • 在高负荷环境中运行应用程序。

原因


发生此问题是因为.NET 垃圾回收器 (GC) 并不会不总是释放的 WMI 对象立即。

解决方案


修补程序信息

受支持的修补程序现已由 Microsoft 提供,但它仅用于纠正本文中描述的问题。只将它应用于正经历此特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修复程序的下一个.NET Framework 2.0 service pack。

要立即解决此问题,请与 Microsoft 产品支持服务,以获取此修复程序。Microsoft 产品支持服务的电话号码和有关支持费用的信息的完整列表,请访问下面的 Microsoft Web 站点:注意: 在特殊情况下,如果 Microsoft 支持专业人员确定某个特定的更新能够解决您的问题,可能取消的通常情况下收取的电话支持服务费用。照常收取支持费用将应用于其他支持问题和对于特定更新无法解决的问题。

系统必备组件

若要应用此修补程序,您必须在计算机上安装.NET Framework 2.0 版。

重启要求

应用此修补程序后,必须重新启动计算机。

文件信息

此修复程序的英文版具有的文件属性 (或更新的文件属性)在下表中列出。日期和为这些文件的时间以协调世界时 (UTC) 列出。当您查看文件信息时,它将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用控制面板中的日期和时间工具中的时区选项卡。
文件名称文件版本文件大小日期时间
System_management.dll2.0.50727.71368,64009-Feb-200609:47

解决方法


若要变通解决此问题,请经常调用GC。WaitForPendingFinalizers方法手动。

注意:调用GC。WaitForPendingFinalizers方法手动可能会降低应用程序性能。

状态


Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

详细信息


有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

用于描述 Microsoft 软件更新的标准术语的824684说明