我有一个解决方案,只有不到100个项目,它是C++和C#(主要是C#)的混合体。在VS2005中工作时,Visual Studio的工作集比VS2010的小得多。Visual Studio 2010 - 如何减少内存占用
我想知道是否有一些东西可以关闭,所以我可以在VS2010下开发32位操作系统而不会出现内存不足的情况。
我有一个解决方案,只有不到100个项目,它是C++和C#(主要是C#)的混合体。在VS2005中工作时,Visual Studio的工作集比VS2010的小得多。Visual Studio 2010 - 如何减少内存占用
我想知道是否有一些东西可以关闭,所以我可以在VS2010下开发32位操作系统而不会出现内存不足的情况。
您可以尝试使用Solution Load Manager。它会让你将一些项目文件标记为按需加载或根本不加载。这可能有帮助。
你可以做的最好的事情就是分解你的解决方案。 Visual Studio并不是要在同一个解决方案中处理如此多的项目,并且因此会遇到性能问题。把你的解决方案分成5个不同的解决方案会让事情变得更好。
不是真的重新:操作系统。事实上,64位操作系统可以为32位进程提供比32位进程多得多的虚拟机。 http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx – 2010-06-16 15:18:20
@Dave确实是一个应用程序,旨在利用可以。我不相信Visual Studio会这样做。 – JaredPar 2010-06-16 15:22:40
@Jared:为了检查,我在devenv.exe上运行了dumpbin/headers,并确认Visual Studio *可以*访问> 2GB,因为“应用程序可以处理大型(> 2GB)地址”标志被设置。 – 2010-06-16 16:38:15
如果你使用XP,升级到Vista或Windows 7将有助于它使用WPF。可能会减少UI渲染的内存占用量,否则这些内存使用兼容模式。
升级到Windows 7将有所帮助。 Vista - 不是那么多。他们对Windows 7中图形堆栈的内存使用情况进行了彻底改进。其实,让我们假装Vista从未发生过。 – 2010-06-16 15:19:25
64位操作系统should help you out a bit here,如果您获得超过4GB的物理RAM。一个64位操作系统可以提供32位进程,并具有4 GB的虚拟内存,而32位操作系统最多只能提供2或3个演出,具体取决于您如何引导操作系统。
这就是说,100个项目是一个很胖的解决方案文件。也许现在会是一个很好的时间重新审视这个决定......
编辑:运行DUMPBIN /头作为文章的devenv.exe在规定的返回:
File Type: EXECUTABLE IMAGE
FILE HEADER VALUES
14C machine (x86)
4 number of sections
4BA1FAB3 time date stamp Thu Mar 18 06:04:35 2010
0 file pointer to symbol table
0 number of symbols
E0 size of optional header
122 characteristics
Executable
Application can handle large (>2GB) addresses
32 bit word machine
因此,这将表明,在x64箱使用> 4GB的RAM可能会改善您的体验。在64位操作系统下,Visual Studio的虚拟机应该多达两倍...
感谢您的期待。仅供参考,SQL二进制文件也知道大内存地址。我的问题特别是关于在32位上开发大型解决方案。 – GregC 2010-06-16 18:26:00
然后我会参考Jared的回答。国际海事组织(无犯罪)解决方案中的100个项目纯属疯狂。 – 2010-06-16 19:07:42
嗯,再次,VS2010中有什么东西可以关闭导致更轻的内存占用? – GregC 2010-06-16 23:05:36