GC.AddMemoryPressure メソッド
アセンブリ: mscorlib (mscorlib.dll 内)



ガベージ コレクションの実行スケジュールを決定する場合、ランタイムでは、マネージ メモリの割当量が考慮されます。小さいマネージ オブジェクトによって大量のアンマネージ メモリが割り当てられた場合、ランタイムでは、マネージ メモリだけが考慮されるので、ガベージ コレクションを緊急にスケジュールする必要があっても、その必要性が過小評価されます。このようなシステム メモリに対する圧迫の追加は、AddMemoryPressure メソッドによってランタイムに通知されます。
最も簡単な例は、マネージ オブジェクトによってコンストラクタ内にアンマネージ メモリが割り当てられ、Dispose メソッドまたは Finalize メソッドで解放されるような場合です。アンマネージ メモリを割り当てた後で AddMemoryPressure メソッドを呼び出し、そのメモリの解放後に RemoveMemoryPressure メソッドを呼び出します。
より複雑な例は、マネージ オブジェクトの有効期間中にアンマネージ メモリ割り当てが大きく変更されるような場合です。この場合、AddMemoryPressure メソッドおよび RemoveMemoryPressure メソッドを呼び出して、これらの追加変更をランタイムに通知します。
![]() |
---|
追加する圧迫の量とまったく同じ量だけを削除するように注意してください。この操作に失敗すると、長期間実行するアプリケーションでシステム パフォーマンスに悪影響があります。 |

- SecurityPermission (ガベージ コレクションの優先順位を操作する場合にアンマネージ コードを呼び出すために必要なアクセス許可)。UnmanagedCode (関連する列挙体)

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- GC.AddMemoryPressure メソッドのページへのリンク