假设我在.NET / CLR流程中有两个AppDomains。
其中一个AppDomains由于未处理的异常而崩溃。
其他AppDomain是否仍然正常运行?如果默认的AppDomain崩溃了怎么办?
我只是想知道什么让一个过程保持活力。由于AppDomains是完全独立的实体,我认为默认的AppDomain可能会崩溃而其他AppDomain可以继续吗?
甚至我的C#书都没有明确提到会发生什么......
答案 0 :(得分:1)
我假设如果你从主线程创建的任何域崩溃,你会没事的。但是,如果您的"输入域"崩溃,其他人也死了。
答案 1 :(得分:1)
如您所述,AppDomains已完成separete。每个域都有自己的资源,因此当它崩溃时,其他域都会被取消。见this。如果您的默认域崩溃,那么从中创建的所有域名也将失败。