方法名标注有async的为异步方法,一般async和await配套使用。
static async Task Main(string[] args)
{
string fileName = "../Resource/1.txt";
StringBuilder sb = new StringBuilder();
for (var i = 0; i < 10000; i++)
{
sb.AppendLine($"Hello{i}");
}
File.WriteAllTextAsync(fileName, sb.ToString());
var result = await File.ReadAllTextAsync(fileName);
Console.WriteLine(result);
}
此处由于 File.WriteAllTextAsync(fileName, sb.ToString());未使用await,文件尚未写入结束就开始执行读取了。由于读写的是同一个文件,所以会提示这个错误。
使用await后就不报错了。