a. 启动慢b. 运行慢c. 稳定性低基于以上问题进行一些思考,最终总结出该方案.
【资料图】
解决方案当项目过大时,需要加载的程序集也越多,对应程序需要启动的时间也越长,如果在这个时候有一个启动的过渡页,从使用的角度看,能在启动后快速看到程序反应,则在某种程度上加快了程序的启动速度.
以VS2022为例,在启动的时候并不是第一时间去加载整个IDE窗口,而是使用了一个过渡,先启动一个启动页再过渡到导航窗口,来选择要编辑的项目,再而去加载整个编辑界面.即:启动窗口->导航窗口->编辑窗口
在启动窗口
时,可以看到VS主进程并没有真正启动,而是到导航窗口
时才启动,这个时候也只是启动了7个子进程,直到编辑窗口
时,以我的设置为例子进程数运行到13个,达到真正使用的状态.那么退回来讲,如果在启动时,直接把这13个子进程的事情合并到一个主进程来做,可想而知,启动速度会慢多少倍而这个情况正是我们在开发客户端项目时使用的逻辑.所以以此为鉴,要做的就是拆分主进程.
从稳定性来说,不管是VS还是CEFSharp,也都是采用多进程的方法,我在使用VS2022的时候遇到过某个模块功能崩溃但不影响主功能使用的情况,而CEFSharp中的CefSharp.BrowserSubprocess进程更是为每个页启动一个进程来做渲染等工作,好处则是即使其中一个页面崩溃,也不影响其他页面.我在开发过程中集成过好多第三方SDK,不限于腾讯阿里,但都在使用过程中遇到各种问题导致SDK内部崩溃,使整个程序崩溃的情况,这些也并不能通过良好的代码及经验来规避,只能等待SDK方去解决,但最终不管是体现在领导或用户方,都是开发人员来背锅,那么要怎么甩锅,我认为依然是多进程.
那说了这么多,多进程真的那么好么?好是真的好,但也要从实际业务去考虑
优点:启动快,安全性高,稳定性高,且可以更好的利用CPU
缺点:启动进程成本高,进程间通讯成本高
所以并不能一味的去靠多进程,如果存在大的模块或者第三方服务时,才应该去考虑多进程实现.
多进程架构实现说了这么说,那么以一个调用阿里播放器SDK的程序为例来进行一个实现.
Shell进程:展示欢迎页检测版本更新当存在版本更新时,直接对主程序集进行更新[主进程也可增加反更新Shell逻辑],增加用户体验(传统做法为,主进程启动时进行版本检测,如需要更新时再启动更新进程)单例启动控制传统的单例启动是控制主进程,一次主进程存在,二次主进程则把启动参数抛给一次主进程.而先启动Shell进程,要做的就是判断主进程是否存在,如果存在直接把启动参数抛给主进程并关闭自己Main进程:程序的主要功能进程,被Shell进行调起,可接收Shell抛来的启动参数集成播放器控件(该控件和播放器SDK完全解耦,负责渲染SDK回调的视频数据和发送控制命令)
Player进程:实例播放器SDK,并把SDK中的视频数据回调给播放器控件
技术实现关于进程间通讯,这里主要使用两种通讯方式,管道和共享内存(C#中SharedMemoryManager库)a. Shell
和Main
进程的通讯,可使用管道来实现.b. Main
(具体为播放器控件)和Player
则使用管道和共享内存两种方式播放器的控制逻辑使用管道来实现,而视频帧的数据回调则使用共享内存来实现.
该方案为在使用其他软件时的观察和思考,包括一些利用ChatGPT4.0得到的信息,仅为个人理解.软件及库不限于:VS2022,CEFSharp,网易云音乐,微信等.
标签:
-
全球热消息:关于大型客户端项目的思考
大型客户端项目在使用过程中一般会面临几个问题:a **启动慢**b **运
-
减压蒸馏实验怎样检查装置气密性(怎样检查装置气密性)
来为大家解答以上的问题。减压蒸馏实验怎样检查装置气密性,怎样检查装
-
李娜首谈凭什么拿澳网冠军:教练对我说的这句话受益终生!
台上一分钟,台下十年功!尤其是竞技体育,想要得到大家的认可,想要征
-
二手房挂牌量攀升真相:“老破小”不受待见是真-环球速看料
【二手房挂牌量攀升真相】“二手房挂牌量究竟有多少?”在全国多个重点
-
帧帧光影壁彩生
据人民日报报导,时隔一年,再访永乐宫。刚碰面,山西省永乐宫壁画保护
-
亲民实用的国民MPV 试驾一汽奔腾M9
一汽奔腾M9作为一款宜商宜家的中级大型MPV,在外观设计、动力技术和空
-
滴滴挣钱技巧_滴滴赚钱技巧
1、这是一份多劳多得的工作哦~而且接单到达一定单数或者完成一定任务之
-
天天观天下!埃弗里约翰逊个人资料和图片_埃弗里约翰逊最新篮球明星动态
埃弗里埃弗里约翰逊,1965年3月25日出生于美国路易斯安那州新奥尔良市
-
天天快报!总资产周转率大于1说明_总资产周转率大于1
1、库存周转率是在某一时间段内库存货物周转的次数。2、是反映库存周转
-
专利代理机构管理系统官网_专利代理机构_热头条
1、专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以
-
天天百事通!何炅的离开,《浪姐》观众的讨伐,谢娜的虚假好人缘早被撕开了
谢娜作为《快乐大本营》的主持人,快乐家族的成员之一,网友们对她是有
-
贾静雯为什么叫外卖_贾静雯为什么离婚
1、首先,这种事情双方都有原因。2、从贾静雯的角度来看:频繁拍戏难免
-
和评理 | 操弄“台湾牌”挑衅中国 美国愚蠢且短视
长期以来,美国为扰乱台海地区的和平稳定可谓无所不用其极。不出所料,
-
和评理 | 操弄“台湾牌”挑衅中国 美国愚蠢且短视
长期以来,美国为扰乱台海地区的和平稳定可谓无所不用其极。不出所料,
-
触摸先民脉搏、破译草原文明 呼伦贝尔草原地带首次发现赭石岩画-世界热门
央视网消息:近日,内蒙古呼伦贝尔博物院等单位经过两年的考察和研究,
-
精彩看点:视网膜脱落手术费用_视网膜脱落手术多少钱
1、视网膜脱离要尽量手术,这样才能保留视功能。2、但手术的收费标准是
-
2014音悦台盛典tfboys_TFBOYS第一次音悦台投票 当前热议
首先打榜的是三只的出道歌曲《Heart》那个时候的三只还刚出道,不是很
-
时代中国控股(01233)首5月累计合同销售金额约为83.63亿元人民币
时代中国控股(01233)公布,截至2023年5月31日止5个月累计合同销售(连
-
天天头条:易点天下发布新能源品牌出海观察 品牌本土化系当下短板
【亿邦原创】日前,国际智能营销服务商易点天下发布了《中国新能源品牌
-
观焦点:厦门大学徐伟_徐迪 厦门大学教授
当前大家对于徐迪厦门大学教授都是颇为感兴趣的,大家都想要了解一下徐
-
环球播报:稽查局查个人账户流程_稽查局
1、国家税务总局的稽查局属于总局的内设机构。2、省以下的稽查局属税务
-
纬度地带性_关于纬度地带性的介绍|全球快资讯
1、自然环境各要素在地表近于带状延伸分布,沿一定方向递变的规律性。2
-
世界播报:荣威350s二手车价格_荣威350s
1、荣威350的制动系统选用了来源于爱信的变速箱,一样有手动式变速箱和
-
王者荣耀怎么添加备选英雄_王者荣耀怎么添加心愿单
你们好,最近小信发现有诸多的小伙伴们对于王者荣耀怎么添加备选英雄,
-
临海市公共资源交易中心_临海市
1、临海市位于中国浙江省中部沿海。2、1990年人口104 2万。3、汉族为主
-
非法进行节育手术罪量刑标准一般判刑多少年 天天快讯
未取得医生执业资格的人擅自为他人进行节育复通手术、假节育手术、终止
-
天天观速讯丨“后浪”来了!浙同科职院引领大学生讲好党的故事
潮新闻客户端通讯员梁莹如何让复杂抽象的理论变得生动形象?如何让青年
-
西城男孩演唱会官宣苏州|全球最新
00:26根据江苏省文旅厅公示专栏,暂定西城男孩将于今年9月13日(星期三
-
邦德股份:6月1日接受机构调研,上海申银万国证券研究所有限公司、中天证券股份有限公司等多家机构参与
2023年6月5日邦德股份(838171)发布公告称公司于2023年6月1日接受机构
-
武进不锈(603878)6月6日主力资金净卖出169.72万元-世界聚看点
截至2023年6月6日收盘,武进不锈(603878)报收于8 22元,下跌1 67%,换