многопоточность в ASP.Net webservice - что происходит после завершения основного потока? - PullRequest
0 голосов
/ 18 февраля 2012

Я унаследовал набор устаревших веб-сервисов (VB.Net, IIS, размещенный в ASMX), в которых некоторые из WebMethods используют базовую многопоточность.

Похоже, что они сделали это, чтобы позволить WebMethod быстрее возвращаться к клиенту с ответом, в то же время выполняя некоторые более длительные операции, которые не влияют на сам объект ответа (например, операции очистки, ведения журнала и т. Д.).

Мой вопрос: что происходит в этом веб-сервисе, когда завершается основной поток (тот, который создал экземпляр WebMethod)? Завершают ли эти другие потоки или он фактически блокирует завершение основного потока, если другие потоки не завершены? Или все процессы выполняются до завершения процесса IIS?

1 Ответ

0 голосов
/ 18 февраля 2012

Потоки не зависят друг от друга, если один поток не ожидает другого.После создания ничто не мешает завершению потока запроса (основного), а любые другие потоки просто завершают сами по себе.

...