Android中内存管理机制

一,Dalvik虚拟机中的GC回收Java应用程序中不再使用的垃圾空间

1,java对象被回收的必要条件:对象已不再被任何变量引用

ex: object obj=new object();obj=null(对对象 new object()的引用置空);

当前仅当对象 (new object)不再被任何变量引用则,此对象方能被GC回收

2,在实际编程中我们要注意在声明对象的引用之前要明确对象的作用域,在一个函数内有效的内存对象要声明为local,当对象不再使用时记得手动将其引用置空.

3,对于程序中复杂数据结构的管理可以使用软引用,弱引用,虚引用来管理这些复杂对象从而保证JVM不会报告内存溢出的错误

二,,Linux内核中的Low Memory Killer位于drivers/staging/Android/lowmemorykiller.c中根据进程的重要性来杀死重要性较低的进程从而释放空间

总结:应用程序中程序所申请的内存由虚拟机来管理,程序本身所在的进程是否被回收由操作系统的内核来管理

更多相关文章

  1. 一款霸榜 GitHub 的开源 Linux 资源监视器!
  2. Android中Serializable和Parcelable接口
  3. Android的致命问题——性能优化
  4. Android(安卓)之旅:Google 发布 Android(安卓)性能优化典范
  5. Android(安卓)进阶13:几种进程通信方式的对比总结
  6. Android(安卓)Training - 代码性能优化小技巧
  7. java/android 设计模式学习笔记(12)---组合模式
  8. Android安全机制--操作系统安全机制-进程、用户与文件安全
  9. android中进程与线程

随机推荐

  1. Android修行之路——Dialog
  2. android create build.xml under ubuntu
  3. 国内外Android知名技术博客汇总
  4. android 代码混淆问题解决
  5. Android Apk反编译、签名
  6. Android:开发环境搭建
  7. Android(安卓)根据城市名称获取经纬度
  8. 在it混了四年了,android开始半个多年头,发
  9. Android中如何修改CheckBox的颜色
  10. Android写文件到SDCard的一般过程和代码