Stream.Dispose Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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:
virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub 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 Dispose
najdete 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
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);
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
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ů.