multithreading - IIS上下文中的线程池

标签 multithreading iis queue threadpool

在IIS上的Web应用程序中运行时,我对System.Threading.Threadpool有一个一般性的问题。
假设我们一次执行了2个请求,然后通过ThreadPool.QueueUserWorkItem方法启动了几个线程。这两个请求将共享ThreadPool,还是将两个请求对ThreadPool的调用在两个单独的池中进行操作?

这是在IIS6和7中。

感谢您的任何见解。

最佳答案

这是MSDN文档中有关ThreadPool class的报价:

There is one thread pool per process. The thread pool has a default size of 250 worker threads per available processor, and 1000 I/O completion threads.



在IIS6和IIS7中,任何给定的ASP.NET应用程序都通过应用程序池基础结构承载在单个进程(w3wp.exe)内。应用程序池可以通过将多个Web应用程序保留在不同的AppDomain中来承载多个Web应用程序,但它可以在一个物理站点中运行服务器上的进程。
这两个事实实际上意味着来自运行中的Web应用程序实例的所有线程都在同一.NET线程池中执行。

关于multithreading - IIS上下文中的线程池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1453283/

相关文章:

java - 如何判断队列大小是否大于最大整数?

c++ - 如果线程函数包含 "printf()",SetThreadAffinityMask() 似乎不起作用

asp.net - Web.config 身份验证错误

java - java中的随机唯一数

python - 为什么一个简单的 python 生产者/消费者多线程程序不能通过增加 worker 数量来加速?

c# - 使用 Microsoft.Web.Administration 库创建 IIS 应用程序会创建两个应用程序而不是一个

jquery - 使用 Jquery 将评论回复表单插入页面

multithreading - 进程、线程、绿色线程、原型(prototype)线程、纤维、协程 : what's the difference?

c++ - 是否使用 unique_ptr 成员变量?

iis - SP安装后IIS 7.5上的HTTP错误503