C# 具有while-true循环和try-catch的任务是否可以突然终止?

C# 具有while-true循环和try-catch的任务是否可以突然终止?,c#,wcf,thread-safety,task,threadpool,C#,Wcf,Thread Safety,Task,Threadpool,我遇到了这样一种情况,任务在运行数周后不知从何处停止,尽管代码是按照以下方式编写的 Task t = Task.Factory.StartNew(() => { while(true) { try { some logic .... } catch(Exception ex) {} Thread.Sleep(1000); } }); 将任务更改为线程是否有助于解

我遇到了这样一种情况,任务在运行数周后不知从何处停止,尽管代码是按照以下方式编写的

Task t = Task.Factory.StartNew(() =>
{   
   while(true)
   {
       try
       {
          some logic ....
       }
       catch(Exception ex)
       {}
       Thread.Sleep(1000);
   }
});
将任务更改为线程是否有助于解决上述问题?
代码构建为wcf服务,并托管在IIS中。已关闭IIS应用程序池重新启动,因此该任务不应受到影响?

可能是
StackOverflowException
?这些是抓不到的。也可以捕获
ThreadAbortException
,但当捕获处理程序退出时,它将重新启动。w3wp.exe工作进程是否处于活动状态?我想那个工人是因为另一个原因而崩溃的,你的回路死了。您的内存堆栈可能会耗尽,因为无休止的循环是危险的。已验证该特定服务的w3wp.exe工作程序仍然处于活动状态,并且在事件查看器中也没有捕获任何错误。T.T它可能是一个
StackOverflowException
?这些是抓不到的。也可以捕获
ThreadAbortException
,但当捕获处理程序退出时,它将重新启动。w3wp.exe工作进程是否处于活动状态?我想那个工人是因为另一个原因而崩溃的,你的回路死了。您的内存堆栈可能会耗尽,因为无休止的循环是危险的。已验证该特定服务的w3wp.exe工作程序仍然处于活动状态,并且在事件查看器中也没有捕获任何错误。T.T