2012-02-28 73 views
2

我有一个ASP.NET Web应用程序,它使用5GB内存运行在64位Windows 8计算机上,8GB内存没有任何问题。但是,当我在同一台机器上创建新的C#控制台应用程序并重新使用Web应用程序使用的相同组件时,控制台应用程序的内存耗尽大约1.6GB(通过查看System.Environment.WorkingSet和System .Diagnostics.Process.GetCurrentProcess()。WorkingSet64)。仍有大量的物理内存。它在2个不同的机器上重新生成。64位控制台应用程序/ ThreadPool内存不足

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

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

+5

这很简单。默认情况下,我的Visual Studio 2010会创建x86目标。将其更改为x64可解决问题。 – 2012-02-28 02:12:17

+0

让它成为一个答案,并接受 - 在这种情况下完成很好,因为你自己找到没有任何帮助。将问题排除在“未答复”列表之外。 – 2012-02-28 03:00:36

回答

2

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

相关问题