多次调用Assembly.Load的副作用
如果多次调用Assembly.Load
会导致任何副作用吗?
例如
for (int i = 0; i < N; i++) { Assembly.Load(assemblyStrongName); // ....... }
这一次装载组件不是吗? 我之前和之后都检查过AppDomain.CurrentDomain.GetAssemblies()
,它似乎已经加载了一次(应该如此),但是它有副作用吗?
在长时间运行的服务器应用程序(运行数月/年而不重启)上面是否会导致任何问题?
这一次装载组件不是吗?
是。 程序集将加载到当前AppDomain中,并且只会加载到该AppDomain中一次。 多次调用只会返回现有的程序集。