当在Appdomain中发生未处理异常时如何不让程序结束掉

如果在某个Appdomain中执行的线程发生了异常,异常会沿着线程的调用栈向上传播直到被调用栈的上层方法捕获并处理掉,否则异常继续传播,在此传播过程中可能会出现跨Appdomain的情况,如果异常被传播到调用栈的顶层方法任然没有被处理掉,则异常会被Runtime捕获并成为UnhandledException,默认情况下这会导致程序退出。可以在App.Config中配置运行时处理UnhandledException的行为,这对于编写多AppDomain的应用程序非常有帮助。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<legacyUnhandledExceptionPolicy enabled="true" />
</runtime>
</configuration>

 

posted @ 2010-09-18 15:49  昝昝  阅读(333)  评论(0编辑  收藏  举报