ASP.NETCore+StreamWriter:为什么`awaitusing`与`using`的行为不同?
创始人
2024-09-17 07:30:26
0

当使用await usingusing同时创建一个流读取器或流编写器时,它们的行为表现出一些差异。具体来说,当使用await using关闭流读取器或流编写器时,可能会使缓冲区中的数据写入文件,导致数据损失。

下面是一种解决方法,它使用await using声明和await DisposeAsync()方法来关闭StreamWriter

using var stream = new FileStream("path/to/file", FileMode.Create);
await using var writer = new StreamWriter(stream);
await writer.WriteLineAsync("Hello world!");

// explicitly dispose of StreamWriter
await writer.DisposeAsync();

相比之下,使用using声明和Dispose()方法来关闭StreamWriter时,不需要使用async void方法,但不能在using块内使用await

using (var stream = new FileStream("path/to/file", FileMode.Create))
using (var writer = new StreamWriter(stream))
{
    writer.WriteLine("Hello world!");
}

相关内容

热门资讯

迎来新发展!新星游辅助软件视频... 迎来新发展!新星游辅助软件视频!都是是真的辅助挂(有挂猫腻)-哔哩哔哩1、新星游辅助软件视频公共底牌...
于此同时!福建兄弟十三冰修改器... 于此同时!福建兄弟十三冰修改器!切实是真的辅助安装(有挂猫腻)-哔哩哔哩福建兄弟十三冰修改器能透视中...
长期以来!超级三加一控制!都是... 长期以来!超级三加一控制!都是真的是有辅助脚本(了解有挂)-哔哩哔哩1、超级三加一控制破解器简单,超...
受玩家影响!wepoker辅助... 受玩家影响!wepoker辅助软件价格!都是存在有辅助app(的确有挂)-哔哩哔哩1、任何wepok...
最新消息!潮汕掌上娱透视软件!... 最新消息!潮汕掌上娱透视软件!果然有挂辅助修改器(有挂方式)-哔哩哔哩潮汕掌上娱透视软件脚本下载中分...
值得注意的是!雀友会广东潮汕麻... 值得注意的是!雀友会广东潮汕麻将辅助软件!好像真的有辅助安装(果真有挂)-哔哩哔哩雀友会广东潮汕麻将...
有玩家发现!闲聚大联盟辅助!真... 有玩家发现!闲聚大联盟辅助!真是真的有辅助下载(有挂秘籍)-哔哩哔哩1、闲聚大联盟辅助辅助器安装包、...
反观!超级三加一透视辅助!切实... 反观!超级三加一透视辅助!切实有挂辅助器(有挂分析)-哔哩哔哩1、进入游戏-大厅左侧-新手福利-激活...
更值得关注的是!心悦踢坑辅助器... 更值得关注的是!心悦踢坑辅助器!原来真的有辅助器(有挂头条)-哔哩哔哩1、心悦踢坑辅助器脚本辅助下载...
为切实保障!微信小程序中至赣牌... 为切实保障!微信小程序中至赣牌圈辅助!果然真的是有辅助神器(讲解有挂)-哔哩哔哩在进入微信小程序中至...