我正在运行一个程序,构建一个非常大的对象,我希望能够给这个进程分配超过2GB的内存。提前致谢。
你无法分配超过2GB的单个对象(或数组),这是CLR的限制。您需要将对象分成小块。
.NET Framework 4.5允许在64位平台上创建大于2GB的数组。这个特性默认情况下是关闭的,需要通过配置文件使用gcAllowVeryLargeObjects元素来启用。
http://msdn.microsoft.com/en-us/library/hh285054(v=vs.110).aspx
您提到的是 32 位 Windows 中虚拟内存的 2GB 限制。在 32 位系统上无法绕过此限制。