函数中出现意外的 ThreadAbortException

Unexpected ThreadAbortException in a function

我们有一个应用程序在间隔 5 分钟后(使用定时器)从 Glabal.asax

调用一个函数

该函数与第三方通信,获取数据并将其发送到更新数据库的另一个应用程序。

在第 4 次或第 5 次调用该函数后,从第 3 方应用程序接收数据时调用 ThreadAbortException。这将停止整个应用程序。

我们不使用 Response.End、Response.Redirect 或 Server.Transfer 这些导致 ThreadAbortException 的函数。

应用程序池可能会 restarted/recycled。但这可能是什么原因呢? 我将超时更改为 0,这意味着它永远不会超时。但我仍然遇到异常。

任何人都可以提出任何建议吗?

谢谢。

我正在使用 WebRequest 对象向第三方发出请求。 解决问题的方法是更改​​请求的超时时间。我改成无限了。

WebRequest request = WebRequest.Create(serviceUrl);
request.Method = "POST";
request.Timeout = System.Threading.Timeout.Infinite;

我希望这对遇到类似情况的人有所帮助。不过,我得到了同事的帮助。

编辑 - 我还在 MSDN 上找到了一篇有趣的文章 - Understanding WebRequest Problems and Exceptions