主帖 4
回帖 4
视频
提问 2
回答 1
资源
专栏
iremoteObjectopenHarmony中跨进程注册的observer概述一般来说,我们在编写代码的时候,经常遇到回调接口需要注册的情况,在单进程之中,我们经常是函数指针传给调用者。那跨进程的场景是如何操作的呢?答案就是iremoteObject。以标准系统蓝牙代码为例最近根据工作的要求,学习研究蓝牙相关代码。通过源码,我们理解学习了针对蓝牙服务,多事件监听的设计模式。.├──bluetootha2dpsinkobserverproxy.h├──bluetootha2dpsink...
2022-04-26 17:54:35 1552浏览 6点赞 3回复 6收藏
源码分析openHarmonyIPC数据传输情景分析1.前情概览我们在前片博客中讲述了proxystub架构的一般编程范式,这篇文章关注驱动自身的数据传输,做一次完整的数据分析。由于IPC通信流程比较复杂,我们先开启上帝视角,将一些数据结构和数据流向直接阐述出来,然后再结合源码调用流查看是否具体是这样的。2.数据结构简述2.1messageParcelmessageParcel用户态数据,可以写入一般类型,也可以写入iremoteObject。为什么要区分这两种类...
2022-03-29 15:14:52 3571浏览 11点赞 3回复 8收藏
源码分析openharmony服务设计架构proxystub服务概览openHarmony中存在很多的服务,一般来说可以使得A应用调用B服务的方法,就像在自己进程中调用一样,这里具体的实现实际通过binder驱动实现。binder驱动通过mmap将内核态代码映射到用户态,直接读写数据这样就完成了跨进程的调用。不过这不是该篇内容的重点,本片主要讲一下proxystub的设计模式。服务的一般编码模式使用proxystub架构编程,大致可以分为以下三个步骤:1.设计接...
2022-03-17 11:23:48 3295浏览 8点赞 3回复 6收藏
源码分析- openHarmony软总线
原创 精华
头条 社区头条
openHarmony软总线架构分析基本类阐述本次说明可能侧重在标准系统之上。软总线依旧采用鸿蒙经典的proxystub架构,接口类ISoftBusServer,ISoftBusClient。一般来说,一些服务就一个接口类,为什么软总线会有两个呢?,我们再看看继承关系。proxystub可以参考https:ost.51cto.composts10765和ISoftBusServer相关的有类似的ISoftBusClient从上面的图中可以看出,一个stub甚至对应几个proxy,看下代码,可以看到就是proxy就是解耦...
2022-03-16 15:44:35 4562浏览 10点赞 7回复 7收藏