.NET 中的进程、应用程序域、对象上下文及 CIL 详解
1. 加载程序集到自定义应用程序域
通常,CLR 在需要时会将程序集加载到默认应用程序域。不过,若手动创建新的应用程序域,可使用 AppDomain.Load() 方法将程序集加载到该应用程序域。此外, AppDomain.ExecuteAssembly() 方法可用于加载 .exe 程序集并执行其 Main() 方法。
以下是一个将 CarLibrary.dll 加载到新的二级应用程序域的示例:
private static void MakeNewAppDomain()
{
// 在当前进程中创建一个新的应用程序域
AppDomain newAD = AppDomain.CreateDomain("SecondAppDomain");
try
{
// 将 CarLibrary.dll 加载到这个新的应用程序域
newAD.Load("CarLibrary");
}
catch (FileNotFoundException ex)
{
Console.WriteLine(ex.Message);
}
// 列出所有程序集
ListAllAssembliesInAppDomain(newAD);
}
运行该程序,输出结果如下:
超级会员免费看
订阅专栏 解锁全文
1544

被折叠的 条评论
为什么被折叠?



