BufferedStream.Close Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Schließt den Datenstrom und gibt alle Ressourcen (insbesondere Systemressourcen wie Sockets und Dateihandles) frei, die dem aktuellen gepufferten Datenstrom zugeordnet sind.
public:
override void Close();
public override void Close();
override this.Close : unit -> unit
Public Overrides Sub Close ()
Ausnahmen
Fehler beim Schließen des Datenstroms.
Hinweise
Alle zuvor in den Puffer geschriebenen Daten werden in die zugrunde liegende Datenquelle oder das Zugrunde liegende Repository kopiert, bevor der gepufferte Datenstrom geschlossen wird. Daher ist es nicht erforderlich, vor dem Aufrufen von Close aufzurufen Flush() . Nach einem Aufruf von Close können alle Vorgänge im gepufferten Datenstrom Ausnahmen auslösen.
Durch das Leeren des Datenstroms wird der zugrunde liegende Encoder nicht geleert, es sei denn, Sie rufen explizit auf Flush() oder schließen. Das Festlegen auf "true" AutoFlush bedeutet, dass Daten aus dem Puffer in den Datenstrom geleert werden, der Encoderstatus wird jedoch nicht geleert. Dadurch kann der Encoder seinen Zustand (Teilzeichen) beibehalten, damit er den nächsten Zeichenblock richtig codieren kann. Dieses Szenario wirkt sich auf UTF8 und UTF7 aus, bei dem bestimmte Zeichen nur codiert werden können, nachdem der Encoder das angrenzende Zeichen oder zeichen empfängt.
Wenn Sie versuchen, einen Datenstrom zu bearbeiten, nachdem er geschlossen wurde, wird möglicherweise ein ObjectDisposedException.