VS 2015 MVC OutOfMemoryException
VS 2015 MVC OutOfMemoryException
尝试调试一个基于MVC5的Web应用程序 - 相当基础。我已经阅读了文章和SO的问题和答案,并尝试了各种方法,但仍然无法弄清楚为什么会出现这个错误。
抛出了类型为'System.OutOfMemoryException'的异常。
在当前的Web请求执行期间发生了一个未处理的异常。请查看堆栈跟踪以获取有关错误的更多信息以及它在代码中的来源。
环境:
- VS 2015
- Windows 10 专业版 N
- IISExpress
- MVC5 Web应用程序
我之前一直使用的是VS 2013,大约两周前升级到了Windows 10后切换到了2015。在切换到2015之前,我从未见过这个错误。这个项目几乎没有大量消耗内存的地方,数据库可能只有十几个表,几十行数据,而且甚至不只是这个单个项目(这只是我目前工作最频繁的项目)。
我已经做了以下工作:
- 验证了在出现此错误时机器资源没有出现峰值(CPU < 10%,14GB内存,在尝试启动调试时保持在6.7GB的使用量,与正常情况下没有尝试启动时保持一致,没有任何峰值)
- 调整了调试设置,确保IISExpress在我关闭会话/停止调试后不会继续运行在后台。
- 将IISExpress放在系统托盘中,可以手动停止应用程序并关闭它
- 验证没有iisexpress的挂起进程继续运行
- 清空了每个临时文件夹和其他我读到的所有技巧
然而,每当我按下F5开始调试时,每三四次就会出现这个错误。有时我可以看到IISExpress正在运行,杀掉它然后再尝试就可以正常工作。有时唯一有效的方法就是重新启动Visual Studio。
我不得不每隔一次才能重新启动VS来调试应用程序。这太荒谬了,而我找不到任何根本原因的线索。
我已经到了无法再忍受的地步,以至于我认为这一定是VS2015的一个bug,可能是在Windows 10专业版(N)上运行时出现的?
有人知道原因吗?拜托了!(如果有人认为有帮助,我可以提供完整的堆栈跟踪)
当使用Visual Studio 2015 MVC时,可能会遇到OutOfMemoryException(内存不足异常)的问题。这个问题的原因是由于项目的Web服务器使用了32位的IIS版本,而32位系统的内存限制为4GB。为了解决这个问题,可以将Web服务器切换为使用64位的IIS版本。
具体解决方法如下:
1. 打开Visual Studio 2015,点击菜单栏的“工具”(Tools)选项。
2. 在弹出的菜单中选择“选项”(Options)。
3. 在“选项”窗口中找到“项目和解决方案”(Projects and Solutions)选项,并展开。
4. 选择“Web项目”(Web Projects)选项。
5. 在右侧的窗口中,勾选“使用64位版本的IIS”(Use the 64 bit version of IIS)选项,确保它被选中。
6. 点击“确定”(OK)按钮保存设置。
另外,还可以参考以下链接获取更多解决方法:
- [http://weblogs.asp.net/morteza/OutOfMemoryException](http://weblogs.asp.net/morteza/OutOfMemoryException)
- [https://stackoverflow.com/questions/28764192/](https://stackoverflow.com/questions/28764192/)
- [http://github.com/Microsoft/TypeScript/issues/3115](http://github.com/Microsoft/TypeScript/issues/3115)
以上链接中的内容可以提供关于如何解决OutOfMemoryException问题的总结和相关引用。希望这些解决方法能帮助到你解决问题。