Ev gelişme Bertaraf nedir? - techopedia nedir?

Bertaraf nedir? - techopedia nedir?

İçindekiler:

Anonim

Tanımı - Dispose ne anlama geliyor?

C # bağlamında dispose, bellek temizleme için gerekli kodu yürütmek ve dosya tanıtıcıları ve veritabanı bağlantıları gibi yönetilmeyen kaynakları serbest bırakmak ve sıfırlamak için çağrılan bir nesne yöntemidir. Dispose, Windows alanı kısıtlı uygulamalarda kullanılan Grafik Aygıt Arabirimi (GDI) tutamaçları gibi yönetilemeyen nesneleri ve kıt kaynakları serbest bırakarak performansı geliştirir ve belleği en iyi duruma getirir.


IDisposable arabirimi tarafından sağlanan Dispose yöntemi Dispose çağrılarını uygular. Atma düzeni, zamanında ve öngörülebilir temizlik, geçici bellek sızıntılarının önlenmesi ve kaynakların atılması için tasarlanmıştır.

Techopedia, Dispose'i açıklıyor

.NET çerçevesi, çöp toplama (GC) işlemini kolaylaştırır, nesne belleğini ve kaynaklarını yönetir ve deterministik olmayan bir yöntem olan Finalize'yi çağırarak geçersiz nesne belleği referanslarını geri alır. Dispose yöntemi, nesne belleği örneklerinin ömrünü denetler ve Finalize'in örtük bellek temizlemesine karşı açık bellek temizleme denetimi sağlar. Yok etme, diğer bellek nesnesi örnekleri mevcut olsa bile çağrılabilir, oysa Sonlandırma yalnızca son bellek nesnesi yok edildikten sonra çağrılabilir.


İmha yöntemi kuralları aşağıdaki gibidir:

  • Kullanımdan hemen sonra serbest bırakılması gereken yönetilmeyen kaynaklar için kullanılır.
  • Dispose çağrılmazsa, Finalize yöntemi uygulanmalıdır.
  • Dispose yöntemini çağırdıktan sonra, Finalize yöntemini engellemek ve gereksiz GC'yi önlemek için GC.SuppressFinalize yöntemi çağrılmalıdır.
  • Dispose yöntemi birden çok kez çağrılırsa istisnalar dikkatle ele alınmalıdır. Kaynaklar atılırsa, herhangi bir örnek yöntemi ObjectDisposedException özel durumunu atabilir.
  • Daha önce Dispose yöntemine sahip bir nesne yeniden kullanılamaz.
  • Dispose yalnızca yerel kaynak nesnelerinin ve .NET Framework'e maruz bırakılan Bileşen Nesne Modeli (COM) nesnelerinin yönetimi için önerilir.
  • Öngörülemeyen sonuçlar nedeniyle imha aynı anda birden çok iş parçacığından başlatılamayabilir.
  • Değer türleri, tek kullanımlık türler olarak veya yönetilmeyen kaynak üyeleriyle oluşturulmamalıdır.
  • Yönetilmeyen kaynakları kullanırken, kaynak kodunu, nesne kodunu tamamladıktan sonra otomatik olarak nesnenin Dispose yöntemini çağıran Use ifadesinin uygulanması en iyi yöntem olarak kabul edilir.
Bu tanım C # bağlamında yazılmıştır.
Bertaraf nedir? - techopedia nedir?