Stream.Dispose Metoda

Definice

Uvolní všechny prostředky používané Stream objektem .

Přetížení

Dispose()

Uvolní všechny prostředky používané v Stream .

Dispose(Boolean)

Uvolní nespravované prostředky používané objektem a Stream volitelně uvolní spravované prostředky.

Dispose()

Uvolní všechny prostředky používané v Stream .

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

Implementuje

Poznámky

Tato metoda uvolní datový proud tím, že zapisuje jakékoli změny do zálohovacího úložiště a zavře datový proud pro uvolnění prostředků.

Volání umožňuje přerozdělování prostředků používaných pro Dispose Stream jiné účely. Další informace o najdete Dispose v tématu Vyčištění nespravovaných prostředků.

Poznámky pro dědice

Všechny logiky čištění pro objekt streamu umístěte do Dispose(Boolean) . Nepřepište Close() .

Vzhledem k požadavkům na zpětnou kompatibilitu se implementace této metody liší od doporučených pokynů pro vzor Dispose. Tato metoda volá Close() metodu , která pak volá Dispose(Boolean) .

Platí pro

Dispose(Boolean)

Uvolní nespravované prostředky používané objektem a Stream volitelně uvolní spravované prostředky.

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)

Parametry

disposing
Boolean

Hodnota true slouží k uvolnění spravovaných i nespravovaných prostředků, hodnota false slouží k uvolnění pouze nespravovaných prostředků.

Poznámky

Všechny prostředky byste měli uvolnit zadáním true pro disposing . Pokud je , může datový proud také zajistit vyprázdnění dat do podkladové vyrovnávací paměti a přístup k dalším disposing true finalizovatelným objektům. To nemusí být možné při volání z finalizační metody kvůli nedostatečnému řazení mezi finalizačními metodami.

Pokud datový proud ke komunikaci se svým zdrojem používá popisovač operačního systému, zvažte pro tento účel SafeHandle použití podtřídy .

Tuto metodu volá veřejná Dispose metoda a Finalize metoda . Dispose vyvolá chráněnou Dispose metodu s disposing parametrem nastaveným na true . Finalize vyvolá s Dispose disposing nastavenou na false .

Poznámky pro dědice

V odvozených třídách nepřepište metodu , místo toho dejte celou logiku čištění Close() streamu do Dispose(Boolean) metody .

Dispose() může být volán vícekrát jinými objekty. Při přepisování buďte opatrní, abyste neodk odkazovat na objekty, které byly dříve odstraněny v Dispose(Boolean) dřívějším volání Dispose() metody . Další informace o tom, jak implementovat Dispose(Boolean) , najdete v tématu Implementace metody Dispose.

Další informace o a Dispose() najdete v tématu Vyčištění Finalize() nespravovaných prostředků.

Platí pro