我正在观看一个视频类(class),其中作者在幕后谈论了 async/await。他展示了准备好的和反编译的代码。我想从头开始做同样的事情。我的意思是,在 DotPeek 的帮助下反编译一些 C# 编译文件。所以我有以下简单的例子:
class Program
{
public static async Task KekAsync()
{
Console.WriteLine("Current thread id before await {0}", Thread.CurrentThread.ManagedThreadId);
await Task.Delay(200);
Console.WriteLine("Current thread id after await {0}", Thread.CurrentThread.ManagedThreadId);
await Task.Delay(200);
Console.WriteLine("Current thread id after await again {0}", Thread.CurrentThread.ManagedThreadId);
await Task.Delay(200);
Console.WriteLine("Current thread id after await again and again {0}", Thread.CurrentThread.ManagedThreadId);
}
static async Task Main(string[] args)
{
await KekAsync();
}
}
在 DotPeek 设置中,我有以下内容:
DotPeek 只是向我展示了我的源代码。但我希望看到异步状态机的实现。代码生成的结果。我使用 .NET Core 3.1 和最新版本的 .NET Framework。两者都给我相同的结果。我错过了什么吗?
最佳答案
关于c# - 如何在 DotPeek 的帮助下查看异步状态机(底层的异步/等待)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63783101/