IPC Kit简介

HarmonyOS 5.0.3(15) 版本的配套文档,该版本API能力级别为API 15 Release

在这里插入图片描述
在这里插入图片描述


基本概念

缩写全称中文描述说明
IPCInter Process Communication进程间通信指设备内的进程间通信。
RPCRemote Procedure Call远程过程调用指设备间的进程间通信。
ClientClient客户端请求服务的一端,称为代理(Proxy)。
ServerServer服务端提供服务的一端,称为Stub。

说明
使用IPC和RPC进行跨进程通信时,需要先调用元能力的连接服务接口获取Proxy对象。IPC和RPC的典型使用场景包括:
IPC典型使用场景是后台服务,后台服务通过IPC机制提供单设备跨进程接口调用与数据传递能力。
RPC典型使用场景是多端协同,多端协同通过RPC机制提供跨设备远端接口调用与数据传递能力。

实现原理

IPC和RPC用于实现跨进程通信。IPC使用Binder驱动,适用于设备内的跨进程通信;RPC使用软总线驱动,适用于跨设备的跨进程通信。每个进程拥有独立的资源和内存空间,其他进程无法直接访问,因此需要使用IPC和RPC实现跨进程通信。

IPC和RPC采用客户端-服务端(Client-Server)模型。在使用时,Client进程可以获取Server进程的代理(Proxy),通过Proxy读写数据和发起请求,Stub处理请求并应答结果,实现进程间通信。Proxy和Stub提供了一组由服务/业务自定义的接口,Proxy实现每一个具体的请求方法,Stub实现对应的每一个具体请求的处理方法以及应答数据的内容。

约束与限制

  • 单个设备上跨进程通信时,传输的数据量最大为200KB。超过200KB的数据量传输可以使用匿名共享内存。

  • 不支持在RPC中订阅匿名Stub对象(没有向SAMgr注册的Stub对象)的死亡通知。

  • 不支持把跨设备的Proxy对象回传到该Proxy对象指向的Stub对象所在的设备。

  • 指向远端设备Stub的Proxy对象不能在本设备内二次跨进程传递。


在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RZer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值