异步编程中的线程状态管理



我是使用c#在。net中进行异步编程的新手。到目前为止,我所理解的是:

使用异步编程,正在等待web服务或数据库返回数据的线程将被释放以处理新请求,直到接收到数据。

一旦接收到数据,线程将重新启动并继续处理调用后的代码。

现在,我想详细了解如何管理线程的状态,以便它可以从异步调用发出的点开始执行。

如果它使用堆栈来处理,有人能给我一个深入了解这个过程吗?

谢谢,

玛雅

现在,我想详细了解如何管理线程的状态,以便它可以从异步调用发出的点开始执行。

Async方法被分成更小的块。基本上,在编译async方法时,对于每一个await关键字生成一个新方法。

请记住,这是一个很大的简化,它都是在幕后完成的,你真的不需要知道它是如何工作的,以便使用它。

最新更新