<gcAllowVeryLargeObjects> 元素

在 64 位平台上,启用总大小大于 2 GB(GB)的数组。

<配置>
   <运行时>
     <gcAllowVeryLargeObjects>

Syntax

<gcAllowVeryLargeObjects enabled="true|false" />

特性

Attribute Description
enabled 必需属性。

指定是否在 64 位平台上启用大于 2 GB 的总大小的数组。

enabled 属性

价值 Description
false 未启用总大小大于 2 GB 的数组。 这是默认情况。
true 在 64 位平台上启用大小大于 2 GB 的数组。

子元素

没有。

父元素

元素 Description
configuration 公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。
runtime 包含有关运行时初始化选项的信息。

注解

应用程序配置文件 中使用此元素可以启用大小超过 2 GB 但不会更改对象大小或数组大小的其他限制:

  • 数组中元素的最大数目为 UInt32.MaxValue

  • 任何单个维度的最大大小为 2,147,483,591(0x7FFFFFC7),用于字节数组和单字节结构的数组,对于包含其他类型的数组,最大大小为 2,146,435,071 (0X7FEFFFFF)。

  • 字符串和其他非数组对象的最大大小保持不变。

注意

在启用此功能之前,请确保应用程序不包含不安全的代码,该代码假定所有数组的大小都小于 2 GB。 例如,如果根据数组不会超过 2 GB 的假设编写,将数组用作缓冲区的不安全代码可能会容易受到缓冲区溢出的影响。

Example

以下 app.config 文件片段演示如何为 .NET Framework 应用程序启用此功能。

<configuration>
  <runtime>
    <gcAllowVeryLargeObjects enabled="true" />
  </runtime>
</configuration>

受支持

.NET Framework 4.5 及更高版本

另请参阅