Как долго работающий поток может работать внутри веб-приложения
Итак, у меня внутри метода контроллера MVC следующий код:
public ActionResult ProcessFile ()
{
ThreadStart threadStart = new ThreadStart ( ()=>{
// Doing some long processing that takes 20 minute
} );
Thread thread = new Thread(threadStart);
thread.Start();
}
Проблема здесь в том, что, когда этому методу контроллера отправлено более одного запроса, поток уничтожается. Мне нужно, чтобы Thread продолжал работать до тех пор, пока не закончится обработка, и, похоже, дело в ресурсах: сколько ресурсов уходит, тем меньше потоков может работать. Если я запускаю процесс из приложения или службы Windows, он работает отлично, у него возникают проблемы только при запуске из веб-приложения.