Stream.Close Yöntem

Tanım

Geçerli akışı kapatır ve geçerli akışla ilişkili tüm kaynakları (yuvalar ve dosya tanıtıcıları gibi) serbest bırakır. Bu yöntemi çağırmak yerine akışın düzgün şekilde atıldığından emin olun.

public:
 virtual void Close();
public virtual void Close();
abstract member Close : unit -> unit
override this.Close : unit -> unit
Public Overridable Sub Close ()

Açıklamalar

Bu yöntem, tüm kaynakların serbest bırakılacağını belirterek Dispose öğesini çağırırtrue. Yöntemini özellikle çağırmanız Close gerekmez. Bunun yerine, her Stream nesnenin düzgün bir şekilde atıldığından emin olun. Akışın ve tüm kaynaklarının atıldığından emin olmak için bir Stream bloğu (veya Visual Basic using bloğu) içinde Using nesneleri bildirebilir veya açıkça Dispose yöntemini çağırabilirsiniz.

Veya uygulamasını açıkça çağırmadığınız sürece akışın boşaltılması temel alınan kodlayıcısını FlushClosetemizlemez. ayarı AutoFlush , true verilerin arabellekten akışa boşaltılacağı, ancak kodlayıcı durumunun boşaltılmayacağı anlamına gelir. Bu, kodlayıcının durumunu (kısmi karakterler) koruyarak sonraki karakter bloğunu doğru şekilde kodlamasını sağlar. Bu senaryo UTF8 ve UTF7'yi etkiler; burada belirli karakterler yalnızca kodlayıcı bitişik karakter veya karakterleri aldıktan sonra kodlanabilir.

Akış kapatıldıktan sonra akışı işleme girişimleri bir ObjectDisposedExceptionoluşturabilir.

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. Daha fazla bilgi için bkz . Dispose Yöntemi Uygulama.

Şunlara uygulanır

Ayrıca bkz.