64位控制台应用程序/线程池内存不足

本文关键字:内存不足 线程 控制台 应用程序 64位 | 更新日期: 2023-09-27 18:26:03

我有一个ASP.NET web应用程序,它使用5GB内存运行在64bit Windows 7机器上,内存为8GB,没有任何问题。

然而,当我在同一台机器上创建一个新的C#控制台应用程序并重用web应用程序使用的相同组件时,控制台应用程序的内存不足,大约为1.6GB(通过查看System.Environment.WorkingSet和System.Diagnostics.Process.GetCurrentProcess().WorkingSet64)。仍有大量物理内存。它在两台不同的机器上进行重新编程。

web应用程序和控制台应用程序都使用ThreadPool.QueueUserWorkItem启动后台线程来加载大量数据。异常发生在后台线程。

我想知道控制台应用程序或ThreadPool上是否有默认的内存限制设置。我可以查看哪些调试变量来查看此限制?

64位控制台应用程序/线程池内存不足

这很简单。默认情况下,我的Visual Studio 2010会创建x86目标。将其更改为x64解决了问题。