Stream.Dispose Metoda

Definice

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

Přetížení

Dispose()

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

Dispose(Boolean)

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

Dispose()

Zdroj:
Stream.cs
Zdroj:
Stream.cs
Zdroj:
Stream.cs

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

public void Dispose ();

Implementuje

Poznámky

Tato metoda odstraní stream tím, že zapíše všechny změny do záložního úložiště a zavře stream, aby se uvolnily prostředky.

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

Poznámky pro dědice

Veškerou logiku čištění pro objekt streamu umístěte do Dispose(Boolean). Nepřepište Close().

Všimněte si, že vzhledem k požadavkům na zpětnou kompatibilitu se implementace této metody liší od doporučených pokynů pro model Dispose. Tato metoda volá Close()a pak volá Dispose(Boolean).

Platí pro

.NET 9 a další verze
Produkt Verze
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Dispose(Boolean)

Zdroj:
Stream.cs
Zdroj:
Stream.cs
Zdroj:
Stream.cs

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

protected virtual void Dispose (bool disposing);

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

Měli byste uvolnit všechny prostředky zadáním true pro disposing. Pokud disposing je true, může stream také zajistit, aby se data vyprázdnila do podkladové vyrovnávací paměti a přistupovala k dalším dokonvatelným objektům. To nemusí být možné při zavolání z finalizátoru kvůli nedostatečnému pořadí mezi finalizátory.

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

Tato metoda je volána veřejnou Dispose() metodou a metodou Finalize() , pokud byla přepsána. Dispose() vyvolá chráněnou Dispose metodu s parametrem nastaveným disposing na true. Finalize Dispose vyvolá s nastaveným disposing na false.

Poznámky pro dědice

V odvozených třídách nepřepište metoduClose(), místo toho vložte do metody veškerou logiku Dispose(Boolean) Stream čištění.

Dispose() může být volána vícekrát jinými objekty. Při přepsání Dispose(Boolean)dávejte pozor, abyste neodkazovali na objekty, které byly dříve odstraněny při dřívějším volání nástroje Dispose(). Další informace o implementaci Dispose(Boolean)najdete v tématu Implementace metody Dispose.

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

Platí pro

.NET 9 a další verze
Produkt Verze
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0