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()
- 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 Dispose
daha 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 disposing
belirterek true
tüm kaynakları serbest bırakmanız gerekir. olduğunda disposing
true
akış 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ış true
korumalı Dispose yöntemi disposing
çağırır. Finalize
Dispose olarak ayarlanmış olarak disposing
false
ç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.