2
struct SomeStruct
{
   //some fields, store ~3kb
}

List<SomeStruct> lst = new List<SomeStruct>();

for (int i = 0; i < int.MaxValue; i++)
   lst.Add(new SomeStruct(/*...*/)); //somewhere we get OutOfMemory exception

所以...我希望它使用虚拟内存并继续工作,而不是异常

4

1 回答 1

3

我很确定你不能那样做。虚拟内存背后的想法是程序无法区分。如果您遇到 OutOfMemory 异常,则意味着操作系统已告诉您“您无法再获得”,包括虚拟内存。

如果有的话,您将需要摆弄操作系统中的设置以及它如何处理虚拟内存。

于 2012-10-31T19:31:17.703 回答