【发布时间】:2012-07-31 10:54:56
【问题描述】:
我有一个来自 this question 的 async/await-on-ASP.NET 的好处的变体。
我的理解是异步与并行不是一回事。所以,在 Web 服务器上,我想知道 async/await 给 ASP.NET 页面带来了多少好处。
IIS+ASP.NET 不是已经非常擅长为请求分配线程了吗?如果一个页面忙于等待资源,服务器就会切换到处理另一个有工作要做的请求?
池中可供 ASP.NET 使用的线程数量有限 - async 是否更有效地使用它们?
正如 Skeet 先生在回答上述问题时指出的那样,我们并不是在谈论阻塞 UI 线程。我们已经是多线程的,在所有请求的任务都完成之前无法完成 Web 响应,无论是否异步,对吧?
我想归根结底是这样的:
在 ASP.NET 页面中异步读取资源(例如文件或 DB 请求)与阻塞它有什么好处?
【问题讨论】:
-
您是否真的阅读过您提到的 Jon Skeet 的回答?他确实解释了在 ASP.NET 中使用
async的好处。 -
@svick:感谢您的阅读。是的,我读了乔恩的回答,但在很多情况下,他说“这取决于”,我想这是他可以给出的唯一答案。我想了解 async/await 在大容量 Web 服务器上的线程含义。
标签: asp.net async-await