每个'HttpRequest'在ASP.NET中都有自己的线程吗?

时间:2009-09-12 22:49:20

标签: asp.net multithreading iis httprequest

在ASP.NET中,每个HttpRequest都有自己的线程吗?

更新 - 澄清一下,我是专门询问传入的请求。

1 个答案:

答案 0 :(得分:31)

如果您指的是使用HttpRequest对象从您的应用程序发出传出请求,则不会 - 在当前线程中运行HttpRequest。

如果您指的是IIS和ASP.NET如何处理每个请求的线程,是的。每个请求都在一个单独的线程上运行。但是,该模型比这更复杂 - 需要考虑worker threads and I/O threads。在负载下,.NET有时会根据需要移动请求from one thread to another。在处理像ThreadStatic这样的事情时,这一点很重要。