Android进程与内存及内存泄露

               

本人博客原文

第一部分 Android进程
1.1、Android进程简介
     每一个 Android应用 在底层都会对应一个独立的Dalvik虚拟机实例,而每一个虚拟机实例都是一个独立的进程空间,不同的应用在不同的进程空间里运行,当一个虚拟机关闭或意外中止时不会对其它虚拟机造成影响,可以最大程度的保护应用的安全和独立运行.
    关于此的更多内容可参考《 Android Dalvik虚拟机简介
1.2、Android进程间内存的不可见性
Android 进程 之间的内存并不是直接可见。
关于此内容参考阅读《 Android中单APK应用多进程
1.3、Android进程内存占用的最大值
Android进程 内存占用的默认最大值为16M或32M ,该值只是指dalvik上分配的内存,它不包括在native上分配的内存值.
更多内容请参考《 Android应用程序的默认最大内存值
1.4、单APK多进程技术
    默认一个APK包就对应一个进程,其进程名就为AndroidManifest.xml文件中 指定的package名。我们可以通过Activity, Service, BroadCastReceiver, ContentProvider的android:process属性来实现单APK多进程
关于此的更多内容请阅读《 Android中单APK应用多进程 》和如何在Android中取得当前进程名
第二部分 Android内存
2.1、Android中如何查看内存
像Linux这种现代操作系统的内存使用是很复杂的,因此很难准确的知道你的应用程序使用了好多内存。查看内存使用的方式有很多种,但是各个方式查看到的结果可能会有微略不同。
关于此的详细内容请阅读《 Android中如何查看内存(上) 》和《 Android中如何查看内存(下)
2.2、对象的强引用,软应用,弱应用
关于此的详细内容请阅读《 对象的强、软、弱和虚引用
2.3、Android中图片占用内存的计算
详细内容请阅读《 Android中图片占用内存的计算
2.4、使用LinkedHashMap来实现高效的内存缓冲
详细内容请阅读《 LinkedHashMap简介
第三部分 Android内存泄漏
3.1、Android内存泄漏简介
在java程序中,如果已经不再使用某个对象,但是因为仍然有 引用指向它 ,垃圾回收器就无法回收它,当然该对象占用的内存就无法被使用,这就造成了内存泄露。
更多内容请阅读《 Android内存泄漏简介
3.2、Android中如何查找内存泄露
我们可以在MAT中,对进程的hprof文件进行分析,以便找到内存泄露。
更多内容请参考《 Android中如何查找内存泄露

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

猜你喜欢

转载自blog.csdn.net/fjjjyf/article/details/86687880
今日推荐