Как потоки создаются и управляются приложением HttpApplication? - PullRequest
2 голосов
/ 13 января 2011

Как потоки создаются и управляются HttpApplication в ASP.NET?

Что определяет, открывает ли HttpContext новый поток или использует существующий поток?Как это можно контролировать?

Я буду рад либо содержательному объяснению, либо ссылке на достаточный ресурс по этой информации.

Ответы [ 2 ]

4 голосов
/ 13 января 2011

Как потоки создаются и управляются приложением HttpApplication в ASP.NET?

Они извлекаются из пула потоков.Они не создаются при каждом запросе.

Что определяет, открывает ли HttpContext новый поток или использует существующий поток?

Новые потоки никогда не создаются.Они извлекаются из пула и возвращаются в него после обслуживания запроса.

Как это можно контролировать?

Это то, что ASP.NET делает оченьну и не то, что вы хотите контролировать, но если вы действительно настаиваете на , вот статья , в которой объясняется, как вы можете использовать потоки STA вместо потоков MTA в ASP.NET.

1 голос
/ 13 января 2011

Вот отличное сообщение от Томаса Марквардта (члена команды разработчиков Microsoft ASP.Net, который фактически работает в этой области) об использовании потоков ASP.NET в IIS6 и IIS7:

http://blogs.msdn.com/b/tmarq/archive/2007/07/21/asp-net-thread-usage-on-iis-7-0-and-6-0.aspx

...