Stream.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.
nesnesi tarafından Stream kullanılan tüm kaynakları serbest bırakır.
Aşırı Yüklemeler
Dispose() |
Stream tarafından kullanılan tüm kaynakları serbest bırakır. |
Dispose(Boolean) |
Stream tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır. |
Dispose()
Stream 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
Bu yöntem, yedekleme deposuna herhangi bir değişiklik yazarak ve kaynakları serbest bırakmak için akışı kapatarak akışı yok eder.
Çağrısı Dispose
, tarafından Stream kullanılan kaynakların başka amaçlar için yeniden ayrılmasını sağlar. hakkında Dispose
daha fazla bilgi için bkz . Yönetilmeyen Kaynakları Temizleme.
Devralanlara Notlar
Akış nesneniz için tüm temizleme mantığını öğesine Dispose(Boolean)yerleştirin. öğesini geçersiz kılmayın Close().
Geriye dönük uyumluluk gereksinimleri nedeniyle bu yöntemin uygulamasının Dispose deseni için önerilen kılavuzdan farklı olduğunu unutmayın. Bu yöntem, çağrısı yapan öğesini çağırırClose()Dispose(Boolean).
Şunlara uygulanır
Dispose(Boolean)
Stream tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır.
protected:
virtual void Dispose(bool disposing);
protected virtual void Dispose (bool disposing);
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)
Parametreler
- disposing
- Boolean
Hem yönetilen hem de yönetilmeyen kaynakları serbest bırakmak için true
; yalnızca yönetilmeyen kaynakları serbest bırakmak için false
.
Açıklamalar
için disposing
belirterek true
tüm kaynakları serbest bırakmalısınız. olduğunda disposing
true
, akış verilerin temel alınan arabelleğe boşaltılmasını ve diğer sonlandırılabilir nesnelere erişmesini de sağlayabilir. Sonlandırıcılar arasında sıralama olmaması nedeniyle bir sonlandırıcıdan çağrıldığında bu mümkün olmayabilir.
Akışınız kaynağıyla iletişim kurmak için bir işletim sistemi tanıtıcısı kullanıyorsa, bu amaçla bir alt sınıfını SafeHandle kullanmayı göz önünde bulundurun.
Bu yöntem public Dispose yöntemi ve yöntemi tarafından çağrılır Finalize . Disposeparametresi olarak ayarlanmış true
korumalı Dispose yöntemi disposing
çağırır. Finalizeolarak ayarlanmış olarak disposing
çağrılır Dispose false
.
Devralanlara Notlar
Türetilmiş sınıflarda yöntemini geçersiz kılmayın Close() , bunun yerine tüm Stream temizleme mantığını yöntemine Dispose(Boolean) yerleştirin.
Dispose() diğer nesneler tarafından birden çok kez çağrılabilir. geçersiz kılma sırasında Dispose(Boolean), daha önce öğesine yapılan bir çağrıda atılmış nesnelere başvurmamaya Dispose()dikkat edin. uygulamasının nasıl gerçekleştirilmesi Dispose(Boolean)hakkında daha fazla bilgi için bkz . Dispose Yöntemi Uygulama.
ve Finalize()hakkında Dispose() daha fazla bilgi için bkz. Yönetilmeyen Kaynakları Temizleme.