一、内存管理机制
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单独的开启一个进程)
五、内存溢出和内存泄漏