自動功能暫停
如果您的可用系統記憶體降至 200 MB 以下,Visual Studio 會在程式碼編輯器中顯示下列訊息:
當 Visual Studio 偵測到記憶體不足的狀況時,它會自動暫停某些進階功能,以協助其保持穩定。 Visual Studio 會繼續如前一般運作,但其效能會降低。
在記憶體不足的情況下,會執行下列動作:
Visual C# 和 Visual Basic 的即時程式代碼分析縮減為最小範圍。
Visual C# 和 Visual Basic 的垃圾收集 (GC) 低延遲模式已停用。
系統會排清 Visual Studio 快取。
改善 Visual Studio 效能
如需在處理大型解決方案或低記憶體狀況時如何改善Visual Studio效能的秘訣和訣竅,請參閱 大型解決方案的效能考慮。
即時程式代碼分析縮減為最小範圍
根據預設,即時程式代碼分析會針對開啟的檔和項目執行。 您可以自定義此分析範圍,以縮減為目前的檔或增加至整個解決方案。 如需詳細資訊,請參閱 如何:設定受控程式碼的即時程式碼分析範圍。 在記憶體不足的情況下,Visual Studio 會強制將即時分析範圍縮減為目前的檔。 不過,您可以在顯示或重新啟動 Visual Studio 時,選擇資訊列中的 [重新啟用] 按鈕,以重新啟用您慣用的分析範圍。 [選項] 對話框一律會顯示目前的即時程式代碼分析範圍設定。
已停用 GC 低延遲
若要重新啟用 GC 低延遲模式,請重新啟動 Visual Studio。 根據預設,Visual Studio 會在您輸入時啟用 GC 低延遲模式,以確保您的輸入不會封鎖任何 GC 作業。 不過,如果低記憶體狀況導致 Visual Studio 顯示自動暫停的警告,則在該會話期間會停用 GC 低延遲模式。 重新啟動 Visual Studio 可重新啟用預設 GC 行為。 如需詳細資訊,請參閱 GCLatencyMode。
Visual Studio 快取已清除
如果您繼續目前的開發會話或重新啟動 Visual Studio,所有 Visual Studio 快取會立即被清空,然後會開始重新填入。 已排清的快取包括下列功能的快取:
尋找所有參考
導航到
新增 Using
此外,也會清除用於內部 Visual Studio 作業的快取。
注意
自動功能暫停警告只會在每個解決方案的基礎上發生一次,而不是以每個會話為基礎。 這表示,如果您從 Visual Basic 切換至 Visual C# (反之亦然),並遇到另一個低記憶體狀況,您可能會收到另一個自動功能暫停警告。
相關內容
- 如何:設定受控代碼的即時代碼分析範圍
- 垃圾收集的基本概念
- 大型解決方案的 效能考慮