Android四种进程通信机制比较

Posted zhujm320

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android四种进程通信机制比较相关的知识,希望对你有一定的参考价值。

介绍

      进程通信本质是进程间数据交换(既数据从这个进程内存拷贝到另外一个进程),由于进程有独立的地址空间,两个进程需要交换数据,需要通过内核进行中转数据,通信的方式不同,通信效率也不一样。本文将介绍4种常用的进程通信的特点,以及优缺点。

图示:

进程通信方式

管道

一对一的进程通信方式,A进程写管道,B进程读管道;或者A进程读管道,B进程写管道

优点缺点
1对1通信,使用简单1次通信需要2次拷贝,效率低

Socket

C/S模型进程通信方式,需要将数据写入一个端口,服务端监听一个端口

优点缺点
C/S模型,可以支持1对多的通信,符合android通信调用场景1次通信需要2次拷贝,效率低

共享内存

多对多通信,进程通信0次拷贝,效率最高

优点缺点
0次拷贝,效率最高控制复杂

binder

binder机制,android上使用的进程通信机制

优点缺点
C/S通信模型,通信一次需要1次数据拷贝,可以进行权限控制通信一次数据容量只有1M-8K,大数据通信需要多次通信

 

 

以上是关于Android四种进程通信机制比较的主要内容,如果未能解决你的问题,请参考以下文章

Android四种进程通信机制比较

Android Activity的启动机制流程和四种启动模式

Android 进阶8:进程通信之 Binder 机制浅析

Android进程间通信(IPC)机制Binder简要介绍和学习计划

Android 中基于 Binder的进程间通信

Android中的IPC进程通信方式第一篇