IIS中应用程序池的自动回收是否会杀死在ASP.NET中从QueueUserWorkItem
调用的工作线程?
由于这是按照设定的时间间隔发生的,而且我会出现随机错误,我想知道这两者是否相互碰撞?
如果是这样,我如何运行异步任务而不被循环杀死?
答案 0 :(得分:1)
当ASP.NET回收时,ASP.NET进程中任何长时间运行的任务都将被停止。如果您需要运行后台任务,请创建一个配套Windows服务来托管这些单独的任务。
答案 1 :(得分:0)
这取决于您在应用程序池中设置的回收设置类型。假设你已经在特定时间设置了回收[或者任何其他条件!] ......那时将产生一个新的工作进程,并且现有的工作进程将有90秒的时间来执行它应该做的事情。在那90秒之后,过程中出现的任何内容都将消失。
你说它是按照设定的时间间隔发生的。您是否在IIS中设置了基于时间的回收?