Stream.Close 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
关闭当前流并释放与之关联的所有资源(如套接字和文件句柄)。 不直接调用此方法,而应确保流得以正确释放。
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 方法。
除非显式调用 或 Close
的Flush实现,否则刷新流不会刷新其基础编码器。 将 设置为 AutoFlushtrue
表示数据将从缓冲区刷新到流,但不会刷新编码器状态。 这允许编码器将其状态保留 (部分字符) ,以便可以正确编码下一个字符块。 此方案会影响 UTF8 和 UTF7,其中某些字符只能在编码器收到相邻字符后进行编码。
尝试在流关闭后操作流可能会引发 ObjectDisposedException。
继承者说明
在派生类中,不要重写 Close() 方法,而是将所有 Stream
清理逻辑放入 方法中 Dispose(Boolean) 。 有关详细信息,请参阅 实现 Dispose 方法。