客户端项目中不可避免的要用到进程间的通信,方式也多种多样。单就开发而言,RPC这种模式最方便来做进程间通信的手段。因为类似于本地函数的调用。实现这个机制需要满足以下内容:
- 接口定义。一个组件是否方便使用,主要是看接口的设计是否简洁合理。
- 满足本地函数调用的特点:函数未执行完不返回,只需要函数签名和函数参数这些信息。
- 是否支持一对多。
调用方需要继承RPCService类,构造函数需要传入连接名称,RPCService根据这个名字与被调方建立连接。通过Invoke方法调用远程方法。Invoke需要传入要调用的函数名和函数参数,目前支持int double string bool四种参数类型,具体可参考invoke_def.h中的定义。也可以在该文件扩展 GetParam方法以支持更多参数类型。
接受方首先要继承RPCService类,构造 函数传入channelName,这些与调用方的步骤相同,
要时当前类获取接受能力,还需要有以前步骤:
DEF_PROCESS_INVOKE(类名)
需要在当前类头文件中定义该类可以接受远程调用&#x