MemoryCache.Dispose Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Sınıfın geçerli örneği MemoryCache tarafından kullanılan tüm kaynakları serbest bırakır.
public:
virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()
Uygulamalar
Açıklamalar
Her MemoryCache örnek olaya bağlıdır AppDomainUnloaded . Ancak, uygulama etki alanı kapatma sırasında, bellek tabanlı bir önbellek açıkça atılmadıysa, önbellek örneği otomatik olarak yöntemini çağırır Dispose .
Atılan önbellek örneği aşağıdaki adımlar kullanılarak kapatılır:
Önbelleğin durumu, önbelleğin atıldığını gösterecek şekilde ayarlanır. Önbellek girdilerini ekleyen, kaldıran veya alan yöntemler gibi önbelleğin durumunu değiştiren genel önbelleğe alma yöntemlerini çağırma girişimleri beklenmeyen davranışlara neden olabilir. Örneğin, önbellek atıldıktan sonra yöntemini çağırırsanız Set , bir çalışma hatası oluşur. Önbellekten öğe almayı denerseniz yöntemi Get her zaman döndürür
null
.Performans sayacı bilgileri artık geçerli önbellek örneğinden alınmaz.
Geçerli önbellek örneği tarafından tutulan önbelleğe alınmış nesnelere yapılan tüm başvurular serbest bırakılır.
Şu anda önbellekteki girdileri izleyen tüm CacheEntryChangeMonitor örneklere bildirim gönderilir.
Bu izleyiciler için değişiklik bildirimi sağlayan geri çağırma nesneleri çağrılır.
Önbellekteki girdilerle kaydedilen tüm CacheItemRemovedCallback örnekler çağrılır. Geri çağırmalara geçirilen kaldırma nedeni şeklindedir CacheSpecificEviction.