我的意思是IIS会回收应用域,但会尝试让待处理的请求完成while already starting a new one。如果所有请求都已响应,但有一个任务正在运行,该应用程序会立即回收,还是会得到与请求尚未响应时相同的宽限期,该怎么办?
答案 0 :(得分:2)
如果您未使用Task
,https://msdn.microsoft.com/en-us/library/dn636893(v=vs.110).aspx向网络应用注册HostingEnvironment.QueueBackgroundWorkItem
,那么该应用只能正常“关闭”自己的请求线程。如果您确实将Task
添加到队列中,那么它将尝试等待Task
完成。但是,等待期并不是无限期的。
Scott Hanselman有一篇关于运行异步任务的好文章。
https://www.hanselman.com/blog/HowToRunBackgroundTasksInASPNET.aspx