Aracılığıyla paylaş


GC.RemoveMemoryPressure(Int64) Yöntem

Tanım

Çalışma zamanına, yönetilmeyen belleğin serbest bırakıldığını ve atık toplamayı zamanlarken artık dikkate alınması gerekmediğini bildirir.

public:
 static void RemoveMemoryPressure(long bytesAllocated);
[System.Security.SecurityCritical]
public static void RemoveMemoryPressure (long bytesAllocated);
public static void RemoveMemoryPressure (long bytesAllocated);
[<System.Security.SecurityCritical>]
static member RemoveMemoryPressure : int64 -> unit
static member RemoveMemoryPressure : int64 -> unit
Public Shared Sub RemoveMemoryPressure (bytesAllocated As Long)

Parametreler

bytesAllocated
Int64

Serbest bırakılan yönetilmeyen bellek miktarı.

Öznitelikler

Özel durumlar

bytesAllocated 0'dan küçük veya buna eşit.

-veya-

32 bit bir bilgisayarda, bytesAllocatedInt32.MaxValue değerinden daha büyüktür.

Açıklamalar

Atık toplamanın zamanlanması gereken zamanı belirlerken, çalışma zamanı ne kadar yönetilen bellek ayrıldığını dikkate alır. Küçük bir yönetilen nesne büyük miktarda yönetilmeyen bellek ayırırsa, çalışma zamanı yalnızca yönetilen belleği dikkate alır ve bu nedenle çöp toplama zamanlamanın aciliyetini hafife alır. AddMemoryPressure yöntemi, sistem belleği üzerindeki bu ek baskının çalışma zamanını bildirir ve RemoveMemoryPressure yöntem çalışma zamanına ek basıncın serbest bırakıldığını bildirir.

AddMemoryPressure ve RemoveMemoryPressure yöntemleri, yalnızca yönetilmeyen kaynakları serbest bırakmak için yalnızca sonlandırıcılara bağımlı olan türler için performansı artırır. Bu yöntemleri, yalnızca türündeki bir tüketicinin çağırmayı Disposeunuttuğu durumlarda yönetilmeyen kaynakları temizlemek için sonlandırıcıların kullanıldığı dispose desenini izleyen türlerde kullanmak gerekli değildir. Nesne sonlandırma ve atma düzeni hakkında daha fazla bilgi için bkz. Yönetilmeyen Kaynakları Temizleme.

En basit kullanım deseninde, yönetilen bir nesne oluşturucuda yönetilmeyen bellek ayırır ve bunu yönteminde Finalize serbest bırakır. AddMemoryPressure Yönetilmeyen belleği ayırdıktan sonra yöntemini çağırın ve serbest bıraktıktan sonra yöntemini çağırınRemoveMemoryPressure.

Yönetilmeyen bellek ayırmanın yönetilen nesnenin ömrü boyunca önemli ölçüde değiştiği daha karmaşık senaryolarda, bu artımlı değişiklikleri çalışma zamanına AddMemoryPressure iletmek için ve RemoveMemoryPressure yöntemlerini çağırabilirsiniz.

Dikkat

Eklediğiniz basınç miktarını tam olarak kaldırdığınızdan emin olmalısınız. Bunun başarısız olması, uzun süre çalışan uygulamalarda sistemin performansını olumsuz etkileyebilir.

Şunlara uygulanır