<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 及更高版本
请参阅
Collaborate with us on GitHub
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.
.NET feedback
The .NET documentation is open source. Provide feedback here.
反馈
提交和查看相关反馈