Stream.Close 方法

定义

关闭当前流并释放与之关联的所有资源(如套接字和文件句柄)。 不直接调用此方法,而应确保流得以正确释放。

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

注解

此方法调用 Dispose,指定 true 释放所有资源。 无需专门调用 Close 方法。 相反,请确保正确释放每个 Stream 对象。 可以在 Visual Basic) 中声明Stream块 (或Using块中的对象using,以确保释放流及其所有资源,也可以显式调用 Dispose 方法。

除非显式调用 或 CloseFlush实现,否则刷新流不会刷新其基础编码器。 将 设置为 AutoFlushtrue 表示数据将从缓冲区刷新到流,但不会刷新编码器状态。 这允许编码器将其状态保留 (部分字符) ,以便可以正确编码下一个字符块。 此方案会影响 UTF8 和 UTF7,其中某些字符只能在编码器收到相邻字符后进行编码。

尝试在流关闭后操作流可能会引发 ObjectDisposedException

继承者说明

在派生类中,不要重写 Close() 方法,而是将所有 Stream 清理逻辑放入 方法中 Dispose(Boolean) 。 有关详细信息,请参阅 实现 Dispose 方法

适用于

另请参阅