记深入分析优化Android应用系统的点点滴滴

原创 2016年08月31日 08:05:14

Memory management for different virtual machines

Android Monitor uses the Virtual Machine (VM) that the device or emulator uses:

  • Android 4.3 (API level 18) and lower uses the Dalvik VM.
  • In Android 4.4 (API level 19), the Android RunTime (ART) VM is an option, while the Dalvik VM is the default.
  • Android 5.0 (API level 21) and higher uses the ART VM.

The VM handles garbage collection. The Dalvik VM uses a mark-and-sweep scheme for garbage collection. The ART VM uses a generational scheme, combined with mark-and-sweep when memory needs a more thorough garbage collection, such as when memory becomes excessively fragmented. The logcat Monitor displays some messages that indicate the type of garbage collection that occurred and why.

Memory Monitor results can vary between the different VMs. As a result, if you’re supporting both VMs, you might want to test with both. In addition, the VMs available for different API levels can have different behavior. For example, the Dalvik VM in Android 2.3 (API level 10) and lower uses externally allocated memory while higher versions allocate in the Dalvik heap only.

You can’t reconfigure the Dalvik and ART VMs to tune performance. Instead, you should examine your app code to determine how to improve its operation, for example, reducing the size of very large arrays.

版权声明:本文为博主原创文章,未经博主允许不得转载。联系邮箱:changhetcgroup@qq.com,来信注明编程技术交流

相关文章推荐

PackageManagerService(Android5.1)深入分析(三)扫描应用目录

PackageManagerService的构造函数中调用了scanDirLI方法来扫描某个目录的apk文件。我们先来看看这个函数: private void scanDirLI(File d...

声波通信(声波传输)在iOS、Android中的应用场景深入分析(含部分声波通信源代码)

最近声波通信非常火爆,尤其在很多嵌入式设备中的应用倍受关注,前段时间发布了声波通信部分源代码(iOS和Android版本,源代码最新版本下载地址:http://download.csdn.net/de...
  • jcgu
  • jcgu
  • 2014年11月11日 11:00
  • 3606

Android 6.0 PKMS 深入分析 扫描应用目录

PackageManagerService的构造函数中调用了scanDirLI方法来扫描某个目录的apk文件。我们先来看看这个函数: 一、scanDirLI [java] view plain ...

Android PKMS深入分析安装应用

一、安装的Activity 在Android,通过发送Intent可以启动应用的安装过程,如下所示: [java] view plain copy Uri uri = Uri.fromF...

PackageManagerService(Android5.1)深入分析(四)安装应用

一、安装的Activity 在Android,通过发送Intent可以启动应用的安装过程,如下所示: Uri uri = Uri.fromFile(new File(filename)); Inten...

读书:《Android系统源代码情景分析》- 简述Android应用程序进程的启动过程

- Overview 1. AMS启动一个应用程序组件时,如果发现其所属应用的进程没有启动,则请求Zygote进程启动之 2. Z进程复制自身,使得app进程获得一个VM实例拷贝,能够运行Java...

Android系统架构分析 和 Android应用程序组件介绍

Android系统架构分析 , Android应用程序组件介绍
  • Ada54
  • Ada54
  • 2015年06月15日 11:33
  • 903

android系统 PowerManager深入分析(非常详细)

概述 一直以来,电源管理是电子产品设计中非常重要的环节,也是任何电子设备中最为重要的系统模块之一,优秀的电源管理方案,能够提供持久的续航能力,良好的用户体验,更能提升电子产品的竞争力。 移...
  • fmc088
  • fmc088
  • 2016年08月11日 22:20
  • 775

android6.0系统 PowerManager深入分析(非常详细) << 推荐阅读

http://blog.csdn.net/u011311586/article/details/51034313 概述 一直以来,电源管理是电子产品设计中非常重要的环节,也是任何电子设备中...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:记深入分析优化Android应用系统的点点滴滴
举报原因:
原因补充:

(最多只允许输入30个字)