android中IPC机制简介

IPC是Inter-Process Communication的缩写,含义为进程间通信或者跨进程通信,是指两个进程间进行数据交换的过程。

什么是进程,进程和线程是截然不同的概念。按照操作系统中的描述,线程是cpu调度最小的单元,同时线程是一个有限的系统资源。而进程一般指一个执行单元,在pc和移动设备上指一个程序或者一个应用。一个进程可以包含多个线程。

最简单情况下,一个进程中可以只有一个线程,即主线程,安卓中为UI线程。

IPC不是安卓中所独有的,任何一个操作系统都需要有相应的IPC机制,比如windows上可以通过剪切板、管道和邮槽等来进行进程间通信;Linux上可以通过命名管道,共享内容、信号量等来进行进程间通信。

Android中最有特色的进程间通信方式,就是Binder。除了Binder,Android还支持Socket,通过Socket也可以实现任意两个终端之间的通信,当然同一个设备上的两个进程通过Socket通信也自然是可以的。

Android中的多进程模式。通过给四大组件指定android:process属性,开启多进程模式。

微信小程序的Activity,就是指定一个多进程Activity。

 一般来说,多进程会造成一下几个方面问题:

(1)静态成员和单例模式完全失效;

(2)线程同步机制完全失效;

(3)SharedPreferences的可靠性下降;

(4)Application会多次创建。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值