1.Service组件

使用模板类BnInterface描述,称为Binder本地对象,对应于Binder驱动程序中的Binder实体对象

实现原理图如下:

android binder 进程间通信机制2 - Binder进程间通信库实现原理-LMLPHP

当一个Binder代理对象通过Binder驱动程序向Binder本地对象发出一个进程间通信请求时,Binder会调用该本地对象的transact函数来处理请求。

对于每一个Binder线程,其内部都有一个IPCThreadState对象,调用它的transact函数和Binder驱动程序交互。

2.Clent组件

使用模板类BpInterface描述,称为Binder代理对象,对应于Binder驱动程序中的Binder引用对象。

实现原理图如下:

android binder 进程间通信机制2 - Binder进程间通信库实现原理-LMLPHP

05-02 14:30