2015-07-01 52 views
9

Visual Studio devenv.exe進程是32位(even when run on a 64-bit OS),因此它不能使用超過4GB的虛擬內存。如何讓Visual Studio保持在4GB虛擬地址空間內

不幸的是,當我使用Visual Studio調試我的C++應用程序時,由於這個4GB的限制,我經常耗盡內存。例如,使用VMMap,下面顯示了幾個小時內我典型的Visual Studio使用情況的進展,導致崩潰。

如何讓Visual Studio使用更少的內存,以免我浪費時間浪費時間?

Visual Studio使用超過3.5 GB的虛擬地址空間是否典型?

我使用Visual Studio 2012,但我認爲這個問題跨越不同的VS版本,因爲Visual Studio 2015仍然沒有64位版本。

(注意的VMMap報告「自由」作爲地址空間的剩餘內存,最高支持4GB的32個進程,和8TB的64個程序在Windows上。)

enter image description here enter image description here enter image description here enter image description here enter image description here enter image description here enter image description here


點的資料我已經嘗試過:

  • 開始在安全模式下
  • 刪除所有插件和擴展,使沒有任何顯示在工具>加載項管理器,也沒有工具>擴展(https://github.com/tsasioglu/Total-Uninstaller是對此很有幫助)
  • 刪除名爲.suo我/。自衛隊文件
  • 刪除使用漏斗和過濾掉所有,但3個項目
  • 刪除了所有我的「符號文件(.PDB)位置」 SEL我的應用程序數據/ * /微軟/ VisualStudio的文件夾
  • 並選擇「自動加載符號:」「僅指定模塊」
  • 選擇「啓用我的代碼」進行調試
  • 禁用智能感知(工具 - >選項 - >文本編輯器 - > C/C++ - >高級 - >禁用智能感知)
+2

你正在運行什麼插件,擴展或插件。我曾經有同樣的問題,直到我卸載所有插件。現在它很少引起麻煩。 – Grantly

+2

你真的需要加載所有的167個項目嗎?如果沒有,請嘗試「漏斗」擴展:https://visualstudiogallery.msdn.microsoft.com/5396fa4a-d638-471b-ac3d-671ccd2ea369 – Blorgbeard

+0

VS肯定可以使用很多虛擬機,尤其是對於大量的項目。嘗試刪除所有擴展名。另外,確保你的機器有8GB的內存,所以VS不會與內存的操作系統衝突。而SSD可能有助於重新啓動。你的屏幕截圖顯示你使用的是Win7,不過它不是XP。您應該使用perfmon和windows的性能計數器。 –

回答

6

它可以可靠地獲取Visual Studio來留在它的4GB的虛擬內存,但你可能要嘗試與一個或多個以下策略,同時測量devenv.exe的內存使用VMMap

  1. remove pl工具>插件管理器和工具>擴展(https://github.com/tsasioglu/Total-Uninstaller可能會有所幫助)和/或運行在Safe Mode
  2. 週期性(例如,每月)刪除您的.sdf和。suo文件(而Visual Studio關閉時),以便可以重新創建它們(而不是刪除,如果您決定要將它們重新命名,請考慮重命名,因爲可能會丟失一些配置設置)
  3. 如果您正在加載大量符號(可以在VS輸出窗口中計數「符號加載」),可以使用工具>選項>調試>符號:「僅指定模塊」,然後單擊「指定模塊」並取消選中「始終加載模塊旁邊的符號」disable this 。您可以在調試> Windows>模塊的調試過程中加載其他符號。從FunnelSolution Folders
  4. 大解決方案
  5. 卸載項目,如果一切都失敗,運行兩個不同的Visual Studio實例:第一個已加載大型解決方案,但不是用來調試(如調試>啓動而不調試),和第二個沒有加載解決方案,但附加到正在運行的進程以進行調試。 (感謝ChrisO提供此建議。)
  6. 如果您確實無法使Visual Studio正常工作,請嘗試WinDbg,該工具由Microsoft開發人員使用,並且是64位(與Visual Studio不同)。

我觀察到了1.7禁用大部分符號加載減少devenv的內存使用GB和刪除名爲.suo我和.sdf文件通過額外的600 MB減少內存使用情況。內存使用量的減少使得Visual Studio每天都會崩潰多次,並且運行穩定,同一個實例運行多天,有時幾周。

除了減少內存使用量之外,這些策略可能會大大加快Visual Studio的速度

+0

我提交了案件號爲115101513270502的Microsoft技術支持事件.Microsoft幫我提出了這些策略。 – JDiMatteo

相關問題