进程:进程是操作系统最核心的概念,它是对正在运行的程序的抽象。线程是进程中的一个实例,是系统实施调度的独立单位。
进程是系统分配资源和调度的基本单位,所以进程都有独立的资源和内存空间,别的进程部分随意访问。
android中每个app分配内存有限,如果到达上线很容易oom,使用多进程可以有效分担主进程的压力,主进程进行ui相关操作,网络请求数据保存很多可以开启一个server在一个新进程中,占用更多的资源。当然所谓的守护进程也是这个逻辑,多个server互相开启,不让杀死,这也是造成android系统资源卡顿的一个重大原因。
一个具体的例子
使用多进程的一个例子是音乐播放器长时间在service里播放音乐。像这样的app应该分成两个进程:一个UI进程,另一个是在后台运行的service。