On 64-bit platforms, enables arrays that are greater than 2 gigabytes (GB) in total size.
<gcAllowVeryLargeObjects enabled="true|false" />
Attributes and Elements
The following sections describe attributes, child elements, and parent elements.
Specifies whether arrays that are greater than 2 GB in total size are enabled on 64-bit platforms.
||Arrays greater than 2 GB in total size are not enabled. This is the default.|
||Arrays greater than 2 GB in total size are enabled on 64-bit platforms.|
||The root element in every configuration file used by the common language runtime and .NET Framework applications.|
||Contains information about runtime initialization options.|
Using this element in your application configuration file enables arrays that are larger than 2 GB in size, but does not change other limits on object size or array size:
The maximum number of elements in an array is UInt32.MaxValue.
The maximum index in any single dimension is 2,147,483,591 (0x7FFFFFC7) for byte arrays and arrays of single-byte structures, and 2,146,435,071 (0X7FEFFFFF) for other types.
The maximum size for strings and other non-array objects is unchanged.
Before enabling this feature, ensure that your application does not include unsafe code that assumes that all arrays are smaller than 2 GB in size. For example, unsafe code that uses arrays as buffers might be susceptible to buffer overruns if it is written on the assumption that arrays will not exceed 2 GB.
The following example shows how to enable this feature for an application.
<configuration> <runtime> <gcAllowVeryLargeObjects enabled="true" /> </runtime> </configuration>
We'd love to hear your thoughts. Choose the type you'd like to provide:
Our feedback system is built on GitHub Issues. Read more on our blog.