如何计算java对象占用的内存
- 作者:zhaozj
- 发表时间:2020-12-23 10:54
- 来源:未知
Java有一个很好的地方就是java的垃圾收集机制,这个机制集成于jvm的,对程序员来说是隐藏且不透明的。这种情况下,如何得到某个对象消耗的内存呢? 曾经看到过有人用以下方法来计算:在生成该object的前后都调用java.lang.Runtime.freeMemory()方法,然后看两者之差即为该object消耗的内存量。
这种方法的代码是:
long totalMem = java.lang.Runtime.freeMemory(); Object myBigObject = null; System.out.println("You just got rid of " + totalMem - java.lang.Runtime.freeMemory()); |
public class Memory { private final static int _SIZE = 500; public static void main( String [] args ) throws Exception { Object[] array = new Object[_SIZE]; Runtime.getRuntime().gc(); long start = Runtime.getRuntime().totalMemory(); for (int i = 0; i < _SIZE; i++) { array[i] = new Object(); } Runtime.getRuntime().gc(); long end = Runtime.getRuntime().totalMemory(); long difference = ( start - end ) / _SIZE; System.out.println( difference + " bytes used per object on average" ); } } |
友情链接
6miu /
6miu盘 /
6miu盘搜 /
6miu专利网 /
发米网 /
8miu发米网 /
win发米网 /
mac技术网 /
win8发米网 /
苹果发米网 /
8miu技术网 /
哎哟喂啊 /
抖音营销 /
发米吧 /
整形 /
去发米网 /
famiwei专利网 /
8wiu专利网 /
发米友 /
发米论剑 /
WP发米网 /
TC发米网 /
6miu博客 /
塞班发米网 /
黑莓发米网 /
爱pad发米网 /
网盘搜索 /
55bbs /
整容 /
美容 /
整容哪家好 /
微整形 /
招标网 /
Kongfu /
ORACLE /
钉钉服务商 /
智慧屏 /
深信服防火墙 /
SAP /
oracle /
深信服 /
maxhub /
希沃 /
防火墙 /
ideaHub /
信创 /
阅片宝 /
SAP /
MES /
PLM /
SCM /
钉钉 /
联系方式
- 地址:成都市人民南路四段成科西路三号省计算机研究院
- 电话:18215660330
- 网址:www.8miu.fun
- 邮箱:179001057@qq.com
Copyright 2010-2020 成都软件开发