当管道关闭时,FileStream 写入数据

FileStream Windows 上的错误处理已更新,以确保与 NamedPipeServerStreamNamedPipeClientStreamAnonymousPipeServerStreamAnonymousPipeClientStream 保持一致。

以前的行为

以前,在写入表示已关闭或断开连接的管道的 FileStream 时,将忽略基础操作系统错误,并将写入报告为成功。 但是,未将任何内容写入管道。

新行为

从 .NET 8 开始,当尝试写入 FileStream 但其底层管道已关闭或断开连接时,写入会失败,并抛出一个 IOException

已引入的版本

.NET 8 预览版 1

破坏性变更的类型

此更改为行为更改

更改原因

此更改旨在统一边缘事例的处理,并避免难以诊断的无提示错误。

在写入所有内容后关闭或断开管道的连接。

受影响的 API