我正在对读取 CSV 文件的不同方式进行一些基准测试,并发现了一个“奇怪”的问题。问题是当我在控制台应用程序中使用此方法时:
var lines = File.ReadAllLines(fileName); // OutOfMemoryException
foreach (var line in lines)
{
//doing stuff
}
我得到一个 OutOfMemoryException,但是当我在我的 WPF 项目中使用相同的方法时,它工作正常。我在上面测试的文件是 730MB,我知道不要在更大的 CSV 文件上使用 ReadAllLines,但为什么这种方法在 WPF 应用程序中有效,但在控制台应用程序中无效?