使用可能なシステム メモリが 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 の内部操作に使用されるキャッシュもクリアされます。
手記
自動機能中断の警告は、セッションごとにではなく、ソリューションごとに 1 回だけ発生します。 つまり、Visual Basic から Visual C# (またはその逆) に切り替えて、もう 1 つのメモリ不足状態が発生した場合は、別の自動機能中断警告を受け取る可能性があります。
関連コンテンツ
- 方法: マネージド コード のライブ コード分析スコープを構成する
- ガベージ コレクションの基礎
- 大規模ソリューションのパフォーマンスに関する考慮事項