我在获取JVM中对象的大小时遇到了一些问题。 JDK 5提供的接口Instrumentation
通过premain()
函数来计算,但我不知道如何使用它。JVM getObjectSize示例
任何人都可以帮助我吗?
我在获取JVM中对象的大小时遇到了一些问题。 JDK 5提供的接口Instrumentation
通过premain()
函数来计算,但我不知道如何使用它。JVM getObjectSize示例
任何人都可以帮助我吗?
最简单,最有效的解决方案是使用非常小的的sizeof库
<dependency>
<groupId>com.carrotsearch</groupId>
<artifactId>java-sizeof</artifactId>
<version>0.0.3</version>
</dependency>
shallowSizeOf()方法或整型尺寸()
这是我迄今为止在这个主题上发现的最简单快速的解决方案...
这是从这个库的作者的演示文稿:http://www.slideshare.net/DawidWeiss /sizeofobject-how-much-memory-objects-take-on-jvms-and-when-this-may-matter?ref=http://cheremin.blogspot.com/2012/05/how-much-memory-objects -take-on-jvm-and.html – 2012-07-30 11:56:39
来源地址:https://github.com/dweiss/java-sizeof – 2012-07-30 11:57:06
谢谢你的工作 – fleture 2012-07-31 02:42:15
下面我们就通过达斯汀马克思一篇很好的文章,我可以参考你。
你可能会发现使用MemoryMeasurer library,这包简单的存储测量到一个相对简单的API。 (或者,你可以看看它的源代码,看看它是如何使用的仪器。)
另一个可以帮助您的开源项目是Jamm,它也使用JVM代理。
你很可能会发现使用内存分析器是一个更简单的方法来做到这一点(这是它的目的) – 2012-07-30 10:11:16