热插拔
比如你做了一个非常重要的服务软件,该软件有多个服务组成,每个服务一个插件,在使用过程中,服务是需要更新的,同时又不能影响其他服务的使用,这个时候就需要热插拔
背景
思考?
1、Kernel.APP为什么加载一个DLL,卸载完可以删除,也就是意味着卸载应用程序域后,可以更新插件,而系统还在运行
2、为什么CMM.dll卸载应用程序域后无法更新插件,CMM.dll与Kernel.SimpleLibrary.dll,差别在哪里?
3、CMM.dll是一个命名空间,里面包含多个类(23),而Kernel.SimpleLibrary.dll是只包含一个类,这个类实现了接口
4、域加载程序集的方法?
新建一个域,然后在域实例化一个实现了具体接口的类