Stream.Dispose Yöntem

Tanım

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 Disposedaha 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 disposingbelirterek 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ış truekorumalı 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.

Şunlara uygulanır