`
mxsfengg
  • 浏览: 206045 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

查看java对象的内存占用情况

    博客分类:
  • java
阅读更多

 

 

jmap 能查看jvm内存中,对象占用内存的情况,还提供非常方便的命令将jvm的内存信息导出的文件。

 

jmap -dump:format=b,file=heap.bin <pid>
 

 

 命令jhat 能够解析 java内存堆的文件,生成相关信息,并启动webServer提供查询。 也就说,我们可以通过浏览器来看这些内存信息。jhat还提供了一个类sql的查询语言---OQL来给我们使用。

 执行一下

 

jhat -J-Xmx512m heap.bin   

 

    就可以将我们刚刚使用jmap导出的内存信息交给jhat解析了。默认的情况下,它会监听7000端口。我在本机的地址就是,http://localhost:7000/。

    访问http://localhost:7000/histo/,大致可以看到一下的画面,这里列出对象,对象实例数量、总占用内存大小。点击进去之后可以看到“谁引用了这个对象,这个对象又引用了哪个”这些信息。不过因为展示的信息非常多,并没有想象中那样清晰可见。

 

 

 

 

 

  • 大小: 12.9 KB
分享到:
评论
1 楼 谁说我不是会员 2017-04-17  
不错,学习了。

相关推荐

    java 对象 内存 大小

    有效测量出 java 对象 内存 大小 可供缓存等计算

    Java内存使用系列一Java对象的内存占用Java开发J

    Java内存使用系列一Java对象的内存占用Java开发Java经验技巧共3页.pdf.zip

    统计缓存(java对象所占的内存)大小

    统计缓存大小(查看java对象所占的内存大小).

    测试java对象占用内存大小的例子

    测试java对象占用内存大小的例子,可以测试常用的类型

    java-sizeof-0.0.4:一个查看java对象占用内存大小

    java-sizeof-0.0.4:一个查看java对象占用内存大小

    JAVA对象所占内存大小计算例子

    JAVA对象所占内存大小计算例子,博文地址:http://blog.csdn.net/u012787710/article/details/53164226

    深入Java核心 Java内存分配原理精讲

    Java内存分配与管理是Java的核心技术之一,今天我们深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域:  ◆寄存器:我们在程序中无法控制  ◆栈:存放基本类型的...

    Java 对象搜索器 - java内存对象搜索辅助工具

    Java 对象搜索器 | java内存对象搜索辅助工具 肖像画家 肖像画家 肖像画家 0x01 工具简介 ############################################################# Java Object Searcher v0.01 author: c0ny1 github: ...

    java堆内存分析工具EclipseMemoryAnalyzer

    少内存占用。 使用 Memory Analyzer 来分析生产环境的 Java 堆转储文件,可以从数以百万计的对象中快速计算出对 象的 Retained Size,查看是谁在阻止垃圾回收,并自动生成一个 Leak Suspect(内存泄露可疑点) 报表...

    java 使用静态成员变量计算内存中实例化的对象数目

    java 使用静态成员变量计算内存中实例化的对象数目

    java内存分配详解

    和对象本身在堆中分配,即使程序运行到使用 new 产生数组或者对象的语句所在的代码块之外,数组和对象本身占据的内存不会 被释放,数组和对象在没有引用变量指向它的时候,才变为垃圾,不能在被使用,但仍然占据...

    为什么Java程序占用的内存比实际分配的多

    很多人错误的认为运行Java程序时使用-Xmx和-Xms参数指定的是程序将会占用的内存,但是这实际上只是Java堆对象将会占用的内存。堆只是影响Java程序占用内存数量的一个因素。要更好的理解你的Java程序将会占用多大的...

    Java解析JSON文本,大数据量工具包

    原理:用时创建的规则降低传统解析器一次性将文本转成Java对象而占用大量内存空间,通过注册Filter并判断自己关注的KEY/VALUE来有选择的创建Java对象或JsonLazyer子对象。 使用方法可以查看jar包中的Sample.java示例...

    java内存对象搜索辅助工具

    配合IDEA在Java应用运行时,对内存中的对象进行搜索。比如可以可以用挖掘request对象用于回显,辅助构造java内存webshell等场景。 0x02 知识储备 使用之前必须了解的三个概念 1、 搜索器 根据要搜索什么样的对象...

    JVM Dump与Java对象的内存布局

    介绍了heap dump和thread dump,以及详细介绍dump工具Memory Analyzer的使用,最后讲解了Java对象的内存布局。

    Java对象存储java-dirty.zip

    java-dirty 是一个快速的基于文件的对象存储系统,只能往存储里添加对象,使用内存映射文件技术。示例代码:Store store = Store.of(Foo.class).from("/path/to/file"); store.put(new Foo(1,2)); store.all()....

    java对象实体类属性字段对比变化过程

    在对比变化过程方面,Java对象实体类通常会使用版本控制的方式来记录属性字段的变化情况。这种版本控制机制可以帮助开发人员更好地追踪和管理对象的状态变化。同时,Java对象实体类还可以提供相应的工具和方法来获取...

    java避免内存泄露

    虽然java有垃圾自动回收机制,但在写程序时,未及时关闭连接,对象引用未释放等,仍会造成内存泄露,此文章从关闭连接,使用弱引用等方面,介绍了怎样避免内存泄露。

    Java 对象(数组)占多大空间(几个字节) 手把手做实验

    命令行: java -XX:+PrintCommandLineFlags -version 查看jvm默认参数 分别是 -XX:+UseCompressedOops 和 -XX:+UseCompressedClassPointers 这2个参数都是默认开启(+代表开启,-代表关闭) UseCompressedOops:普通...

Global site tag (gtag.js) - Google Analytics