目录
前言
说起进程,不得不说说进程和线程之前的关系。在操作系统角度描述,线程是CPU调度的最小单位且是有限的系统资源。而进程是值一个执行单位,例如一个程序或应用,一个进程包含多个线程,默认的一个线程是主线程,即UI线程,可以操作Ui界面元素,但不能做耗时任务,否则会ARN程序无响应。我们可以使用多进程分担主进程压力以免因资源消耗过大被crash掉,另外多进程相互监听可以唤醒,使应用程序长期驻守后台接受即时消息和通知,防止应用被系统回收。
什么是IPC?
IPC(Inter-Process Communication)即进程间通信或者跨进程通信,指两个进程之间数据交换的过程。
什么是AIDL?
AIDL(Android Interface Definition Language)即Android接口定义语言,指Android 提供的一种进程间通信 (IPC) 机制。
为什么用多进程?
下面说一下微信采用多进程开发的客户端架构,看看微信是怎么做的?
微信在v2.x+版本时,对NetWork层做轻重进程分离,独立到一个单独的进程中(:push中),而上面两个层级依然跑在微信主进程中(