gpt4 book ai didi

C# async/await - 程序如何跟踪调用 "await"的位置?

转载 作者:行者123 更新时间:2023-12-03 12:58:28 26 4
gpt4 key购买 nike

<分区>

当正在运行的线程遇到 await 时,内部使用什么机制来“标记”该特定方法最终需要在等待的任务完成时恢复?考虑以下方法:

public async void DoSomething()
{
await Task.Run(() => SomeLongRunningWork());
// Code to resume when the task is done...
Console.WriteLine("Resuming...");
}

当达到上面的await时,线程池中的一个线程被用来做长时间运行的工作。此外,调用线程会立即退出 DoSomething() 方法,并在任务完成后“返回”。

调用线程如何知道如何在某个时刻“返回”?内部正在发生什么来实现这一目标?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com