首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IIS请求处理线程池是否与TPL线程池相同?

IIS请求处理线程池是否与TPL线程池相同?
EN

Stack Overflow用户
提问于 2018-02-08 21:49:31
回答 1查看 786关注 0票数 2

我知道任务并行库(TPL)使用线程池运行任务。

我还读到IIS使用“线程池”来处理传入的Http请求。

我的问题是:,这两者是指同一个线程池吗??

假设我有一个控制器方法:

代码语言:javascript
复制
[HttpGet]
public async void GetAsyncTest()
{
    await Task.Run(() => {//Do some heavy CPU work here});
}

任务是否使用与请求线程相同的线程池中的线程处理?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-10 20:37:35

简单的回答是

这就是为什么启动CPU密集型操作的任务没有意义:它将使用来自同一个池的线程作为其他传入请求,因此您的应用程序将无法像之前那样处理更多的请求。这超出了在web应用程序中实现异步的目的:它是关于释放线程供其他请求使用,同时执行外部IO重操作 (db请求或对另一个服务的http请求)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48695337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档