美文网首页
JVM & DVM&泄漏

JVM & DVM&泄漏

作者: 就爱烫卷发 | 来源:发表于2022-11-27 17:17 被阅读0次

JVM java虚拟机 (基于栈,指令多,复制多,速度慢)
.java -> .class-> .jar (多个.class 加载方式会慢)

DVM Dalvik Virtual Machine(基于寄存器,指令大,指令少,)
.java -> .class-> .dex(工具会去除冗余信息,所有class文件被放在一起)

ART(Android Runtime) 替代了DVM(4.4发布  ,5.0使用)在 ART 中,系统在安装应用程序时会
进行一次 AOT (ahead of time compilation ,预编译) 这样运行的效率就大大提升了,缺点就是预编译导致安装的时间变长,预编译之后占用的空间会变大,7.0之后使用JIT+AOT

使用 systrace
python systrace.py --time=10 -o newtrace.html scahed gfx view wm

内存泄漏:
对于一些需要Context的类,除了dialog(这个必须为Activity)其他的不跟随Activity生命周期,需要使用Application的Context 以防止内存泄漏

  • 针对handle的内存泄漏有两种处理方式
    1.在activity销毁的时候进行onDestory()的时候进行 mHandler .removeCallbacksAndMessages (null) ;
    2.使用静态的handler类如:

    private static class MyHandler extends Handler{
       private final WeakReference<BaseActivity> mActivity;
       public  MyHandler(BaseActivity baseActivity){
          mActivity  = new WeakReference<BaseActivity> baseactivity
    } 
    @override 
      public  void handlerMessage(Message msg){
      if(mActivity!= null ){
         //do
      }
    } }
    
  • 针对Bitmap 使用之后销毁 Cursor FIle Finally的时候需要进行销毁

相关文章

  • JVM & DVM&泄漏

    JVM java虚拟机(基于栈,指令多,复制多,速度慢).java -> .class-> .jar (多个.cl...

  • 谈谈 LeakCanary 原理 --标准答案

    内存泄漏传统意义上的内存泄漏是至忘记手动释放内存,导致未释放的内存不可使用的现象。 jvm 的内存泄漏jvm的内存...

  • Android性能优化-内存泄漏的8个Case

    1. 什么是内存泄漏? JVM内存管理 关于内存泄漏我们要知道,JVM内存分配的几种策略。 静态的 静态的存储区,...

  • JVM

    简介 Jvm 系列一:Java类的加载机制Jvm系列二:JVM内存结构 --内存泄漏与内存溢出Jvm系列三:GC算...

  • 一次完整的JVM堆外内存泄漏故障排查记录

    前言 记录一次线上JVM堆外内存泄漏问题的排查过程与思路,其中夹带一些JVM内存分配机制以及常用的JVM问题排查指...

  • JVM

    1. 内存溢出和内存泄漏 内存溢出是说程序需要申请的内存超过了JVM当前可以分配的最大内存,溢出。内存泄漏是说期望...

  • Android 优化二 Java内存分配机制及内存泄漏

    本篇文章已授权微信公众号郭霖独家发布 Java内存分配机制及内存泄漏目录介绍1.JVM内存管理1.1 JVM内存管...

  • 吊打面试官!JVM虚拟机灵魂77问,你能答对多少?

    JVM虚拟机77道题 1、java中会存在内存泄漏吗,请简单描述。2、64位JVM中,int的长度是多数?3、Se...

  • JVM内存结构分析

    JVM内存结构分析 对于Java程序员来说,内存是由JVM自动管理的,所以一旦出现内存泄漏或溢出的问题,不了解JV...

  • Mac OS下MAT(Memory Analyzer Tool)

    简述MAT(Memory Analyzer Tool),内存分析工具,是一款常用的JVM调优工具,对于分析内存泄漏...

网友评论

      本文标题:JVM & DVM&泄漏

      本文链接:https://www.haomeiwen.com/subject/utrnxdtx.html