所以我在 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 应用程序或服务运行该进程,它可以完美运行,只有从 Web 应用程序启动时才会出现问题。