我在asp.net应用程序(System.Threading.Thread
)中创建了一些托管线程。每个线程在数据库中创建一行,并在工作完成后删除它(大约3-5分钟)。
当我在windows的task manager
中查看w3wp
的线程计数时,线程计数比我预期的要少。例如,如果我根据数据库有100个正在运行的作业,那么在w3wp
中就有50个线程。它是非常波动的,有时是一对一的。
task manager
中的thread count
是否计算托管线程?如果是,那么我的线程在哪里?
发布于 2011-04-28 19:18:41
操作系统线程与托管线程没有固定的关系,因为非托管宿主可以控制托管线程和非托管线程之间的关系。具体地说,对于复杂的主机,可以使用Fiber来针对同一操作系统线程调度多个托管线程,或者在不同的操作系统线程之间移动托管线程。
来源:Managed and Unmanaged Threading in Microsoft Windows
https://stackoverflow.com/questions/5817454
复制相似问题