Stream.Close Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Stänger den aktuella strömmen och släpper alla resurser (till exempel socketar och filhandtag) som är associerade med den aktuella strömmen. I stället för att anropa den här metoden kontrollerar du att dataströmmen tas bort korrekt.
public:
virtual void Close();
public virtual void Close();
abstract member Close : unit -> unit
override this.Close : unit -> unit
Public Overridable Sub Close ()
Kommentarer
Den här metoden anropar Disposeoch anger true för att frigöra alla resurser. Du behöver inte anropa Close metoden specifikt. Kontrollera i stället att alla Stream objekt tas bort korrekt. Du kan deklarera Stream objekt i ett using block (eller Using blockera i Visual Basic) för att säkerställa att strömmen och alla dess resurser tas bort, eller så kan du uttryckligen anropa metoden Dispose.
Om dataströmmen rensas töms inte dess underliggande kodare om du inte uttryckligen anropar en implementering av Flush eller Close.
true Inställningen AutoFlush innebär att data rensas från bufferten till strömmen, men kodartillståndet rensas inte. Detta gör att kodaren kan behålla sitt tillstånd (partiella tecken) så att nästa teckenblock kan kodas korrekt. Det här scenariot påverkar UTF8 och UTF7 där vissa tecken endast kan kodas efter att kodaren har fått det intilliggande tecknet eller tecknen.
Försök att ändra strömmen när strömmen har stängts kan utlösa en ObjectDisposedException.
Anteckningar till arvingar
I härledda klasser åsidosätter Close() du inte metoden, utan placerar i stället all rensningslogik Stream i Dispose(Boolean) -metoden. Mer information finns i Implementera en avyttringsmetod.