Linux 进程间通信方式:
1.共享内存 (速度最快,不需要数据拷贝的过程,不安全)
2.消息队列
3.socket
4.有名管道 无名管道 信号 信号量
android 进程间通信 Binder(IPC):
安全性考虑,进程间不能直接通信,所以采用binder机制实现ipc
进程与线程区别
线程的是进程(apk)的一个执行流程,一个进程可包含多个线程,一个程序最少包含一个进程
Bundle 文件共享SharedPreferences service ContentProvider BroadcastReceiver 广播 socket
定义方面:进程是程序在某个数据集合上的一次运行活动;线程是进程中的一个执行路径。(进程可以创建多个线程)
角色方面:在支持线程机制的系统中,进程是系统资源分配的单位,线程是CPU调度的单位。
资源共享方面:进程之间不能共享资源,而线程共享所在进程的地址空间和其它资源。同时线程还有自己的栈和栈指针,程序计数器等寄存器。
独立性方面:进程有自己独立的地址空间,而线程没有,线程必须依赖于进程而存在。
开销方面。进程切换的开销较大。线程相对较小。(前面也提到过,引入线程也出于了开销的考虑。)