Chinaunix首页 | 论坛 | 博客
  • 博客访问: 242098
  • 博文数量: 164
  • 博客积分: 60
  • 博客等级: 民兵
  • 技术积分: 1129
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-09 21:55
文章分类

全部博文(164)

文章存档

2017年(2)

2015年(67)

2014年(95)

我的朋友

分类: Android平台

2015-04-11 17:01:57

##进程和应用程序
* 进程是应用程序运行的载体
>linux系统创建了一个进程(pid),这个进程负责运行dvm,
>Android应用程序的java代码是运行在DVM虚拟机里面

* 应用程序概念(application)
>四大组件放在一起就是一个应用程序
一个应用程序可能对应多个进程

##应用程序的退出
应用程序的任务栈清空了,就代表应用程序退出了。
应用程序在退出的时候,操作系统会保留应用程序的进程。

##进程的生命周期(Process lifecycle)
Android系统会尽量的长时间保留每个开启的进程
>目的:就是为了下一次开启这个应用程序的时候速度提高
>缺陷:最终内存会不足。
>解决方案: 给进程按照优先级排序,如果内存不足就回收这个进程

###进程的优先级
1. Foreground process(前台进程)
>应用程序,用户正在操作,activity的onresume方法被执行了,用户可以获取到焦点,可以相应点击事件。
2. Visible process   (可视进程)
>应用程序的ui界面,用户还可以看到,但是不能操作了。
3. Service process   (服务进程)
>应用程序没有界面,但是有一个后台的服务还处于运行状态
4. Background process(后台进程)
>应用程序没有服务处于运行状态,应用程序被最小化了,activity执行了onstop方法
5. Empty process      (空进程)
>没有任何组件运行,所有的activity都关闭了,任务栈清空了
阅读(716) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~