2018.3.1、android-内存管理

261 阅读2分钟

一、内存管理机制

1、分配机制: 操作系统会为每个进程分配合理的内存大小,从而保证每个进程能正常的运行

2、回收机制: 在系统内存不足的时候,会有一个内存回收再分配的过程,从而保证新的进程能够正常运行

二、android内存管理机制

1、分配机制: 弹性动态分配内存大小,但并不是不限制的分配过多的内存。android 内存分配的机制就是让更多的进程存活在内存中。减少了应用启动的时间,提高用户的体验

2、回收机制: 在android系统内存不足时,根据进程的优先级来杀死一部分进程回收内存,并从新分配到新的进程中。(前台进程(屏幕显示的进程) 、可见进程(不属于前台进程但又可见的进程)、服务进程(定位)、后台进程(后台计算处理数据)、空进程(没有任何东西运行在内存中))

三、内存管理机制的特点

1、更少的占用内存

2、适合的时候,合理的释放内存。频繁释放内存容易产出内存抖动

3、在android 系统内存紧张的时候,释放不重要的系统资源。为android 提供可用的内存。

4、合理的保存还原重要数据,使系统更快的回复该应用

四、内存优化方法

1、service完成任务后,及时关闭 IntentServie 继承service

2、UI不可见是释放部分UI使用到的资源

3、系统内存紧张的时候,释放不重要的系统资源

4、避免滥用Bitmap导致的内存浪费(调用recycle \使用软引用bitmap 然后使用Lru缓存算法)

5、使用对内存进行优化过的数据容器

6、避免注入框架的使用

7、使用多进程(webview单独的开启一个进程)

五、内存溢出和内存泄漏