Aracılığıyla paylaş


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()

Kaynak:
Stream.cs
Kaynak:
Stream.cs
Kaynak:
Stream.cs

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 akışı yayın kaynaklarına kapatarak akışı bertaraf eder.

Çağrısı Dispose , tarafından Stream kullanılan kaynakların başka amaçlarla 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ı içinde 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 düzeni için önerilen kılavuzdan farklı olduğunu unutmayın. Bu yöntem, öğesini çağırır Close()ve ardından öğesini çağırır Dispose(Boolean).

Şunlara uygulanır

Dispose(Boolean)

Kaynak:
Stream.cs
Kaynak:
Stream.cs
Kaynak:
Stream.cs

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ırakmanız gerekir. olduğunda disposingtrueakış ayrıca verilerin temel alınan arabelleğe boşaltılmasını sağlayabilir ve diğer sonlandırılabilir nesnelere erişebilir. 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, geçersiz kılındıysa public Dispose() yöntemi ve Finalize() yöntemi tarafından çağrılır. Dispose(), parametresi olarak ayarlanmış truekorumalı Dispose yöntemi disposing çağırır. FinalizeDispose olarak ayarlanmış olarak disposingfalseçağırır.

Devralanlara Notlar

Türetilmiş sınıflarda yöntemini geçersiz kılmayınClose(), 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ılınırken Dispose(Boolean), daha önce öğesine yapılan bir çağrıda atılmış olan nesnelere başvurmamaya Dispose()dikkat edin. uygulaması 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