zoukankan      html  css  js  c++  java
  • Android中如何查看内存(下)

    Android中如何查看内存(下)

    实例1

        int cnt=0;

        final static int kBufferMinSize=1000;

        final static int kBufferMaxSize=2000;

        StringBuffer strBuffer=new StringBuffer(kBufferMinSize);

        StringBuffer strBuffer2=new StringBuffer(kBufferMinSize);

        StringBuffer strBuffer3=new StringBuffer(kBufferMinSize);

        StringBuffer strBufferNativePss=new StringBuffer(kBufferMinSize);

        StringBuffer strBufferDalvikPss=new StringBuffer(kBufferMinSize);

        StringBuffer strBufferOtherPss=new StringBuffer(kBufferMinSize);

        Debug.MemoryInfo memoryInfo=new Debug.MemoryInfo();

        final static String tag="robin";

        void printMemory()

        {

         long totalMemory=Runtime.getRuntime().totalMemory();

              long freeMemory=Runtime.getRuntime().freeMemory();

              long usedMemory=(totalMemory-freeMemory)>>10;

              totalMemory=totalMemory>>10;

              freeMemory=freeMemory>>10;

              if(strBuffer.length()>kBufferMaxSize)

              {

                    strBuffer.delete(0,strBuffer.length());

                    strBuffer2.delete(0,strBuffer2.length());

                    strBuffer3.delete(0,strBuffer3.length());

                    strBufferNativePss.delete(0,strBufferNativePss.length());

                    strBufferDalvikPss.delete(0,strBufferDalvikPss.length());

              }

              strBuffer.append(usedMemory+",");

              strBuffer2.append(totalMemory+",");

              strBuffer3.append((Debug.getNativeHeapSize()>>10)+",");

              Debug.getMemoryInfo(memoryInfo);

              strBufferNativePss.append((memoryInfo.nativePss)+",");

              strBufferDalvikPss.append((memoryInfo.dalvikPss)+",");

              if(cnt++%10==0)

              {

                    Log.i(tag,"usedMemory:"+strBuffer.toString());

                    Log.i(tag,"totalMemory:"+strBuffer2.toString());

                    Log.i(tag,"NativeHeapSize:"+strBuffer3.toString());

                    Log.i(tag,"Native PSS:"+strBufferNativePss.toString());

                    Log.i(tag,"Dalvik PSS:"+strBufferDalvikPss.toString());

              }    

        }

    注意,对于输出的内存信息日志,我们稍作编辑就可以用于在excel产中图表,比便更直观的进行分析
  • 相关阅读:
    PHP设计模式
    PHP设计模式
    PHP 23种设计模式
    MySQL 中的共享锁和排他锁的用法
    PHP_MySQL高并发加锁事务处理
    Connection: close和Connection: keep-alive有什么区别
    罗辑思维首席架构师:Go微服务改造实践
    真诚与尊重是技术团队的管理要点
    10种常见的软件架构模式
    百亿级微信红包的高并发资金交易系统设计方案
  • 原文地址:https://www.cnblogs.com/qingchen1984/p/4971440.html
Copyright © 2011-2022 走看看