怎么看内存?
我有个map,但是eclipse好卡,请问如何查看map内存?
[解决办法]
一个简单看一段代码执行耗了多少内存的方法:
在执行前后用这个打印一下。
Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory();
还有可以用jdk自带的Jconsole。
[解决办法]
public class MemoryTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.gc();
long total = Runtime.getRuntime().totalMemory();
long m1 = Runtime.getRuntime().freeMemory();
System.out.println("before:" + (total - m1));
Map<Object,Object> map = new HashMap<Object,Object>();
for(int i=0; i < 100; i++){
map.put(new Object(), new Object());
}
long total1 = Runtime.getRuntime().totalMemory();
long m2 = Runtime.getRuntime().freeMemory();
System.out.println("after:" + (total1 - m2));
System.out.println(map.toString());
}
}