糖果派对官方网站_可以赌钱的糖果游戏_手机版
bb电子糖果派对:OSGi标准的C#实现开源

bb电子糖果派对:OSGi标准的C#实现开源

作者:操作系统    来源:未知    发布时间:2020-01-29 05:54    浏览量:

这是大要在3-4年前实现的三个C#bb电子糖果派对,福衢寿车的OSGi框架,完结的进程参照了OSGi标准与与局地落到实处思路(感激那时仿照效法过的那多少个资料与类型卡塔尔,此框架尽管仅在多少个Mini项目有过其实的运用,但OSGi的专门的工作贯彻照旧相对相比完好的,富含了部分为主的元素,由于个人的系列注重已经更改,今后计划把它公开出来,供大家参照他事他说加以考察:OSGi.NET框架是叁个参谋了OSGi标准的模块化处理框架。框架为应用程序扩大)提供了八个行业内部条件。整个框架能够分开为局地档次:1.运营遭遇2.模块3.生命周期管理4.劳务注册5.增加点支撑方今OSGi.NET具好似下特征:1.组件的可插拔性:组件可凭借作业必要在运作时展开装载、卸载操作2.组件的动态更新:组件在运营时可更新替换当前版本3.组件的版本隔绝:不相同组件援引相符付加物的比不上版本程序集能够版本隔绝4.组件完整的生命周期:满含已设置、已装载、已激活、运营中、结束中、已卸载5.组件的加载顺序:组件加载依照业务供给可设置加载等第来支配加载次序6.组件的通讯援救:组件间通过面向服务的编制程序模型来达成组件间通讯、调用的目标7.组件的扩大帮衬:组件提供了扩展点及其扩张来满意某些组件的扩充性扶植运维多少个OSGi.NET应用程序仅要求如下代码usingSystem;usingOSGi.NET.Core.Root;namespaceConsole德姆o{classProgram{staticvoidMain(string[]args卡塔尔国{//创造框架工厂varframeworkFactory=newFrameworkFactory(State of Qatar;//创立框架内核varframework=frameworkFactory.CreateFramework(卡塔尔;//早先化框架framework.Init(卡塔尔(قطر‎;//运行框架framework.Start(卡塔尔;Console.ReadLine(State of Qatar;}}}创设一个OSGi.NET项目须要:1.援用框架内核程序集OSGi.NET.dll2.增添框架内核配置文件OSGi.NET.properties3.如须要日志扶助,加多log4net.config文件及log4net.dll程序集引用OSGi.NET项目的私下认可文件目录构造如下/程序目录/程序目录/Bundles//程序目录/Bundles/模块A//程序目录/Bundles/模块A/Manifest.xml/程序目录/Bundles/模块A/模块A.dll/程序目录/Bundles/模块A/Libs//程序目录/Bundles/模块A/Libs/*.dll/程序目录/Bundles/模块B//程序目录/Bundles/模块C//程序目录/Libs/(可选卡塔尔/程序目录/OSGi.NET.properties注:程序目录中的Libs文件夹寄放个Bundles的分享程序集(也可透过在配备文件中布署分享项目清单卡塔尔国,如接口左券、公共第三方类库等。模块A中的Libs文件夹贮存其个人程序集。Manifest.xml作为程序事项清单文件对模块进行自描述。OSGi.NET.properties为框架内核配置文件有关加载次序:由于专业需要,各模块存在依据关系的或是,所以模块加载也是有加载顺序的必要,那时候能够因此清单文件中Manifest.xml,Bundle节点的StartLevel属性对其加载次序进行安装。数值越小,加载越前。关于Bundle引用程序集搜索原则:1.基于加载的Bundle援引程序集,依靠程序集名称+版本号相称原则,优先从[/程序目录/Libs/]目录或分享项目清单中查找。2.如首先步无相配,则依据程序集名称从[/程序目录/Bundles/模块A/Libs/*.dll]目录寻觅,并将追寻到的程序集对应版本关联Bundle。3.各Bundle下Libs目录程序集在加载中做了Bundle间的割裂,确认保证分裂的Bundle援引的次第集间不会导致影响。即:如存在分享程序集请放置[/程序目录/Libs/]目录或在分享清单配置。Github地址:

下一篇:没有了
友情链接: 网站地图
Copyright © 2015-2019 http://www.tk-web.com. bb电子糖果派对有限公司 版权所有