使用java查看內存使用情況
public class test {
public static <E> void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
final Runtime rt = Runtime.getRuntime();
// jvm終止前記錄內存信息
rt.addShutdownHook(new Thread() {
public void run() {
StringBuffer sb = new StringBuffer();
long heapMaxSize = rt.maxMemory() >> 20;
sb.append("最大可用內存" + heapMaxSize);
long total = rt.totalMemory() >> 20;
sb.append("堆內存大小:" + total);
long free = rt.freeMemory() >> 20;
sb.append("空閒內存大小:" + free);
System.out.println(sb);
}
});
// 放入400萬鍵值對
for (int i = 0; i < 4000000; i++) {
map.put("key" + i, "value" + i);
}
}
}