BufferedStream.Close 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
스트림을 닫고 현재 버퍼링된 스트림과 관련된 리소스(특히 소켓 및 파일 핸들과 같은 시스템 리스소)를 해제합니다.
public:
override void Close();
public override void Close ();
override this.Close : unit -> unit
Public Overrides Sub Close ()
예외
스트림을 닫는 동안 오류가 발생했습니다.
예제
이 코드 예제는에 대해 제공 된 큰 예제의 일부는 BufferedStream 클래스입니다.
' When bufStream is closed, netStream is in turn
' closed, which in turn shuts down the connection
' and closes clientSocket.
Console.WriteLine(vbCrLf & "Shutting down the connection.")
bufStream.Close()
// When bufStream is closed, netStream is in turn
// closed, which in turn shuts down the connection
// and closes clientSocket.
Console.WriteLine("\nShutting down the connection.");
bufStream.Close();
// When bufStream is closed, netStream is in turn closed,
// which in turn shuts down the connection and closes
// clientSocket.
Console::WriteLine( "\nShutting down connection." );
bufStream->Close();
설명
버퍼에 이전에 기록된 모든 데이터는 버퍼링된 스트림을 닫기 전에 기본 데이터 원본 또는 리포지토리에 복사됩니다. 따라서 닫기를 호출하기 전에 를 호출 Flush() 할 필요가 없습니다. Close를 호출한 후 버퍼링된 스트림에 대한 모든 작업에서 예외가 발생할 수 있습니다.
명시적으로 호출 Flush() 하거나 닫지 않는 한 스트림을 플러시하면 기본 인코더를 플러시하지 않습니다. true로 설정 AutoFlush 하면 데이터가 버퍼에서 스트림으로 플러시되지만 인코더 상태는 플러시되지 않습니다. 이렇게 하면 인코더가 다음 문자 블록을 올바르게 인코딩할 수 있도록 해당 상태(부분 문자)를 유지할 수 있습니다. 이 시나리오는 인코더가 인접한 문자 또는 문자를 받은 후에만 특정 문자를 인코딩할 수 있는 UTF8 및 UTF7에 영향을 줍니다.
스트림이 닫힌 후 스트림을 조작하려고 하면 가 ObjectDisposedExceptionthrow될 수 있습니다.
적용 대상
추가 정보
.NET