7 c# stack-overflow windows-services
我对我的一个Windows服务做了一个小小的调整,而不是我运行它得到了,
描述:由于堆栈溢出,进程终止.
所以我回到旧版本并运行它,我仍然得到stackoverflow错误.
最糟糕的部分是我调试了两个,我没有得到这个错误再次发生.如何/什么是找到导致Windows服务溢出的最佳方法?
您可以订阅AppDomain.UnhandledException以记录异常.另一种选择是查看服务崩溃时是否生成了故障转储,并使用WinDbg来跟踪问题.您还可以配置窗口以生成这些转储.WinDbg附带的脚本可以附加到进程并在此进程崩溃时生成转储.
从这篇文章:
...并且发现StackOverflowException并不那么难.如果您运行!clrstack并找到200多行的callstack,您可以或多或少地确定这是您的问题.
更新:
如果使用.NET 4.0,则需要将legacyCorruptedStateExceptionsPolicy元素添加到服务配置文件中,以便在AppDomain.UnhandledException中记录异常.
| 归档时间: |
|
| 查看次数: |
1631 次 |
| 最近记录: |