.NET AppDomain如何使托管进程保持活动状态?

时间:2014-07-15 13:08:27

标签: c# .net exception appdomain unhandled

假设我在.NET / CLR流程中有两个AppDomains。

其中一个AppDomains由于未处理的异常而崩溃。

其他AppDomain是否仍然正常运行?如果默认的AppDomain崩溃了怎么办?

我只是想知道什么让一个过程保持活力。由于AppDomains是完全独立的实体,我认为默认的AppDomain可能会崩溃而其他AppDomain可以继续吗?

甚至我的C#书都没有明确提到会发生什么......

2 个答案:

答案 0 :(得分:1)

我假设如果你从主线程创建的任何域崩溃,你会没事的。但是,如果您的"输入域"崩溃,其他人也死了。

答案 1 :(得分:1)

如您所述,AppDomains已完成separete。每个域都有自己的资源,因此当它崩溃时,其他域都会被取消。见this。如果您的默认域崩溃,那么从中创建的所有域名也将失败。