IIS与ASP.NET中的线程池

1. W3 Thread Pool(W3TP)

当处于内核模式的http.sys接收到来自用户的请求之后,会将请求放入队列中。那处于用户模式的w3wp进程如何从内核模式的队列中取出请求呢?I/O完成端口(IOCP,I/O Completion Port)闪亮登场。w3wp中有专门干这个的——w3dt+w3tp,可以通过process explorer捕捉到它的身影。

W3TP

2. .NET线程池

当请求被w3tp通过w3dt从http.sys的队列中取出来后,接下来的工作就会转交给ASP.NET,这时另一个线程池粉墨登场——.NET Thread Pool。

【参考资料】

Dissection of an ASP.NET 2.0 request processing flow

posted @ 2014-05-31 21:29  dudu  阅读(5522)  评论(3编辑  收藏  举报