Stream.Close Methode

Definitie

Hiermee sluit u de huidige stroom en worden alle resources (zoals sockets en bestandsingangen) die aan de huidige stroom zijn gekoppeld, vrijgegeven. In plaats van deze methode aan te roepen, moet u ervoor zorgen dat de stream correct wordt verwijderd.

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

Opmerkingen

Met deze methode wordt aangeroepen Disposeen wordt opgegeven true om alle resources vrij te geven. U hoeft de Close methode niet specifiek aan te roepen. Zorg er in plaats daarvan voor dat elk Stream object correct wordt verwijderd. U kunt Stream objecten binnen een using blok (of Using blok in Visual Basic) declareren om ervoor te zorgen dat de stroom en alle bijbehorende resources worden verwijderd, of u kunt de methode Dispose expliciet aanroepen.

Als u de stream leegmaken, wordt de onderliggende encoder niet leeggemaakt, tenzij u expliciet een implementatie van Flush of Close. Dit betekent AutoFlushtrue dat gegevens van de buffer naar de stream worden leeggemaakt, maar dat de encoderstatus niet wordt leeggemaakt. Hierdoor kan de encoder de status (gedeeltelijke tekens) behouden, zodat het volgende blok tekens correct kan coderen. Dit scenario is van invloed op UTF8 en UTF7, waarbij bepaalde tekens pas kunnen worden gecodeerd nadat de encoder het aangrenzende teken of de aangrenzende tekens heeft ontvangen.

Pogingen om de stream te manipuleren nadat de stream is gesloten, kan een ObjectDisposedException.

Notities voor overnemers

In afgeleide klassen overschrijft u de Close() methode niet in plaats daarvan Stream alle opschoonlogica in de Dispose(Boolean) methode. Zie Een verwijderingsmethode implementeren voor meer informatie.

Van toepassing op

Zie ook