Служба WCF, возможно ли сохранить поток и возобновить его позже? - PullRequest
0 голосов
/ 13 марта 2012

У меня есть служба wcf, которую я использую для запуска долгоживущих потоков (5-10 минут).Я передаю функцию в новый поток, чтобы предотвратить зависание браузера конечного пользователя.

В этот момент, если пул приложений перезагружается, я теряю работу, выполняемую в потоке.

Хотя я уверен, что мог бы что-то записать в объект, обрабатывающий работу, чтобы он продолжал работу с sql.

Я надеялся, что найдется способ удержать IIS от рециркуляции или, что еще лучше, возобновить поток.

1 Ответ

3 голосов
/ 13 марта 2012

Боюсь, что выполнение фоновых задач в размещенном на IIS приложении ASP.NET - очень плохая идея, как вы уже узнали. Вы можете настроить пул приложений в IIS и отключить утилизацию, но это может иметь некоторые другие побочные эффекты для производительности вашего приложения, поэтому вы можете пересмотреть перемещение этих фоновых задач в Windows Services или консольных приложениях, которые запланированы для запуска с помощью планировщика Windows, и где вы не нужно беспокоиться о том, что AppDomain может быть переработан в любое время.

...