java程序本身占用的内存输出

文章标签: java
2014-11-12 17:20:40     14 人阅读    

java如何的当前程序占用的内存情况?
为测试程序的性能,需要每隔一段时间知道程序占用内存的情况.
可以用一个线程每个一段时间打印数据,
但JDK是否提供了这样的方法呢?或者在JDK中调用系统的API实现

 

log.info("-----------------------------------------------------------");
    MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();

    log.info("dump max " + change(memoryMXBean.getHeapMemoryUsage().getMax()));
    log.info("dump l " + change(memoryMXBean.getHeapMemoryUsage().getInit()));
    log.info("dump used " + memoryMXBean.getHeapMemoryUsage().getUsed());
    log.info("getHeapMemoryUsage " + memoryMXBean.getHeapMemoryUsage());
    log.info("getHeapMemoryUsage " + memoryMXBean.getHeapMemoryUsage().hashCode());

    log.info("=================");
    log.info("no dump max" + change(memoryMXBean.getNonHeapMemoryUsage().getMax()));
    log.info("no dump l " + change(memoryMXBean.getNonHeapMemoryUsage().getInit()));
    log.info("getNonHeapMemoryUsage " + memoryMXBean.getNonHeapMemoryUsage());
    log.info("getNonHeapMemoryUsage " + memoryMXBean.getNonHeapMemoryUsage().hashCode());
    log.info("-----------------------------------------------------------");
 
change 函数,是把KB转换成M的函数,上面默认输出的KB
 


原文地址:http://www.itmmd.com/201411/166.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

ibm aix下 java环境变量设置   上一篇
下一篇  Jquery动态替换div 内容,动态展示

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!