c# 如何开辟超大数组
如题,比如代码需要开辟20000×20000的数组,按如下方式声明
double[,] a = new double[20000, 20000];
就会有System.OutOfMemoryException错误。
我的操作系统是windows server 2008 R2 Enterprise,64位,内存64G,内存方面是够用。
网上查到了利用<gcAllowVeryLargeObjects>在.NET 4.5平台上开辟超过2G数组的方法,但我用了之后还是出现相同问题,不知是不是我的用法有问题?
我是在vs2012中新建一个.net 4.5的C#工程后,在解决方案的App.config里写入
<configuration>
<runtime>
<gcAllowVeryLargeObjects enabled="true" />
</runtime>
</configuration>
然后再运行程序的。可是这样依然会报内存溢出错误。
不知是不是我的<gcAllowVeryLargeObjects>用法有问题?还有没有其他办法可以开辟超大数组的?
C#新手,望大家多多赐教~