<gcAllowVeryLargeObjects> 元素
在 64 位平台上,启用总大小大于 2 千兆字节 (GB) 的数组。
configuration
runtime
<gcAllowVeryLargeObjects>
语法
<gcAllowVeryLargeObjects enabled="true|false" />
特性
属性 | 描述 |
---|---|
enabled |
必需的特性。 指定是否在 64 位平台上启用总大小大于 2 GB 的数组。 |
enabled 属性
值 | 说明 |
---|---|
false |
未启用总大小大于 2 GB 的数组。 这是默认值。 |
true |
总大小大于 2 GB 的数组在 64 位平台上启用。 |
子元素
无。
父元素
元素 | 说明 |
---|---|
configuration |
公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。 |
runtime |
包含有关运行时初始化选项的信息。 |
注解
在应用程序配置文件中使用此元素可启用大小大于 2 GB 的数组,但不更改对象大小或数组大小的其他限制:
数组中的最大元素数为 UInt32.MaxValue。
对于字节数组和单字节结构的数组,任何单个维度的最大大小为 2147483591(0x7FFFFFC7),对于包含其他类型的数组,最大大小为 2146435071(0X7FEFFFFF)。
字符串和其他非数组对象的最大大小保持不变。
注意
启用此功能之前,请确保应用程序不包含假定所有数组的大小都小于 2 GB 的不安全代码。 例如,如果将数组用作缓冲区的不安全代码在编写时假定数组不会超过 2 GB,则它可能会容易受到缓冲区溢出的影响。
示例
以下 app.config 文件片段演示如何为 .NET Framework 应用程序启用此功能。
<configuration>
<runtime>
<gcAllowVeryLargeObjects enabled="true" />
</runtime>
</configuration>
受以下版本支持:
.NET Framework 4.5 及更高版本