gpt4 book ai didi

c# - 如何避免手动启动的线程死亡?

转载 作者:行者123 更新时间:2023-12-03 12:49:52 24 4
gpt4 key购买 nike

我在IIS上运行的系统上有一个进程,它需要几个小时才能完成,因此它可以在线程上运行。

问题在于,由于IIS进程超时(无 Activity ),该线程在一段时间后被删除。该线程不能在中间停止。

如果线程正在运行,如何防止此超时?

最佳答案

在IIS中的“应用程序池”的设置中,您可以将其配置为在一段时间不 Activity 后不回收AppDomain。但是请注意,在IIS中使用长时间运行的任务不是一个好主意,并且此设置可能不是100%可靠的。例如,如果服务器开始运行时内存不足或CPU使用率很高,IIS仍可以回收它。 IIRC也可以配置此阈值。

最好的方法是将那些长期运行的任务作为单独的Windows服务进行外部化。

而且,如果您不能做上述任何事情,而您绝对绝望了,那么您可以在绝望中尝试的最后一件事是通过定期发送HTTP请求以免死机,从而从此后台线程自动ping Web应用程序。但是,那再次应该真的是您应该尝试的最后一件事。

关于c# - 如何避免手动启动的线程死亡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7406974/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com