GC.AddMemoryPressure(Int64) Method

定義

アンマネージ メモリが大規模に割り当てられたため、ガベージ コレクションをスケジュールするときに考慮する必要があることが、ランタイムに通知されます。 Informs the runtime of a large allocation of unmanaged memory that should be taken into account when scheduling garbage collection.

[System.Security.SecurityCritical]
public static void AddMemoryPressure (long bytesAllocated);
パラメーター
bytesAllocated
Int64

割り当てられたアンマネージ メモリの増加量。 The incremental amount of unmanaged memory that has been allocated.

例外

bytesAllocated が 0 以下です。 bytesAllocated is less than or equal to 0. - または - -or- 32 ビットのコンピューターで、bytesAllocated の値が MaxValue の値を超えています。 On a 32-bit computer, bytesAllocated is larger than MaxValue.

注釈

ガベージ コレクションのスケジュールを決定するには、ランタイムは考慮マネージ メモリの量が割り当てられます。In determining when to schedule garbage collection, the runtime takes into account how much managed memory is allocated. 小さなマネージ オブジェクトが大量のアンマネージ メモリを割り当てる場合、ランタイムはマネージ メモリだけを考慮し、したがってガベージ コレクションのスケジュールの緊急度を過小評価します。If a small managed object allocates a large amount of unmanaged memory, the runtime takes into account only the managed memory, and thus underestimates the urgency of scheduling garbage collection. AddMemoryPressureメソッドは、システム メモリにこの追加の負荷のランタイムを通知します。The AddMemoryPressure method informs the runtime of this additional pressure on system memory.

最も簡単な使用パターン、マネージ オブジェクト コンス トラクターで、アンマネージ メモリの割り当てし、解放する、DisposeまたはFinalizeメソッド。In the simplest usage pattern, a managed object allocates unmanaged memory in the constructor and releases it in the Dispose or Finalize method. 呼び出す、AddMemoryPressureアンマネージ メモリを割り当てた後にメソッドを呼び出すと、RemoveMemoryPressureメソッドを解放するとします。Call the AddMemoryPressure method after allocating the unmanaged memory, and call the RemoveMemoryPressure method after releasing it.

場所、アンマネージ メモリの割り当てはマネージ オブジェクトの有効期間中に大幅に変更より複雑なシナリオで呼び出すことができます、AddMemoryPressureRemoveMemoryPressure実行時に増分変更を通知するメソッド。In more complicated scenarios, where the unmanaged memory allocation changes substantially during the lifetime of the managed object, you can call the AddMemoryPressure and RemoveMemoryPressure methods to communicate these incremental changes to the runtime.

注意事項

追加する圧力の量だけを削除することを確認する必要があります。You must ensure that you remove exactly the amount of pressure you add. そのために失敗するの長時間実行されるアプリケーションでシステムのパフォーマンスが低下することができます。Failing to do so can adversely affect the performance of the system in applications that run for long periods of time.

セキュリティ

SecurityPermission
ガベージ コレクションの優先順位を操作するときに、アンマネージ コードを呼び出す機能。 for the ability to call unmanaged code when manipulating garbage-collection priority. 関連付けられた列挙体。 UnmanagedCode Associated enumeration: UnmanagedCode

SecurityCriticalAttribute
直前の呼び出し元に対する完全な信頼が必要です。 requires full trust for the immediate caller. このメンバーは、部分的に信頼されたまたは透過的なコードで使用することはできません。 This member cannot be used by partially trusted or transparent code.

適用対象