目录
1、 什么是IPC通信?
IPC通信概念
- IPC(Inter-Process Communication)通信,是跨越两个不同进程(Process)之通信。
- 一般而言,一个Android应用程序里的各组件(如Activity、 Service等)都在同一个进程里执行。这种在同一进程内的通信,又称为短程通信,意味着,两个Activity在同一个进程(Process)里执行。
- 相对地, 远程(Remote)通信的意思是:两个组件(如Activity或Service)分别在不同的进程里执行;两者之间是IPC通信, 又称远程通信。
IPC通信的效率
- 当我们启动某一支应用程序(App)时,Android系统里的Zygote服务孵化(Fork)一个新进程(Process)给它,然后将它(该App)加载到这个新诞生的进程里。
- 基于Linux的安全限制,以及进程的基本特性(例如,不同进程的地址空间是独立的),如果两个类(或其对象)在同一个进程里执行时,两者沟通方便也快速 .
- 但是,当它们分别在不同的进程里执行时,两者沟通就属于IPC跨进程沟通了,不如前者方便,也慢些 。
2、 复习: Android的进程概念
- 一个进程是一个独立的执行空间,不会被正在其它进程里的程序所侵