应用程序域如何在异常处理中有用?
答
据我所知加载子模块AppDomains
不会提供更好的异常处理。在AppDomain.UnhandledException Event MSDN的页面就评论说:
与.NET Framework 2.0版开始,这个逆止在子线程 未处理的异常被删除,因为这样的无声故障的 累积效应包括性能 下降,损坏的数据和锁定,所有这些都难以调试 。
这意味着即使代码在子AppDomain中执行,子线程中的未处理异常也会导致整个过程停止。
通常,子AppDomains
用于您提到的程序集卸载功能,以及用于在沙箱(受限制的安全环境)中执行代码。