android process lifecycle 进程等级
首先,andorid的内核是linux,ios的内核是unix,他们的线程销毁都是由系统决定的。
android的process有5个等级:
1、Foreground Process (前台进程)
foreground 的优先级最高,他处于前台
a 正处于Activity Resume()状态
b 正处于与bound服务交互的状态
c 正处于服务在前台的状态,(startForeground()被调用)
d Service生命周期函数正在被执行(onCreate(),onStart(),onDestroy())
e BroadcastReceiver正在执行onReceive()方法
杀死Foreground Process需要用户响应,因为这个安全优先级是最高的。
2、Visible Process
Activity不在前台显示,但也没有隐藏,能够看的见,比如弹出一个对话框 (input Method)
一个bound到visible或者foreground的activity的Service ,或者是一个输入法
3、Service Process
正在运行的,不在上述两种状态的Service
4、Background Process
不可见状态的Activity进程,onStop()被调用
5、Empty Process
没有运行任何Components的进程,保留这个进程主要是为了缓存的需要。