jmap直方图中的这些对象是什么?

时间:2011-10-27 09:03:08

标签: java memory jmap

我正在使用jmap来获取堆的直方图。我不确定对象是什么被称为“[C”,“[S”,“[I”和“[B”。有人知道吗?

$ jmap -histo 3299

 num     #instances         #bytes  class name
----------------------------------------------
   1:          9804       19070632  [Ljava.util.HashMap$Entry;
   2:         38074        6216960  [Ljava.lang.Object;
   3:         62256        4727832  [C
   4:         19665        3124744  <constMethodKlass>
   5:         19665        2365864  <methodKlass>
   6:         57843        2313720  java.lang.String
   7:          1662        2060528  <constantPoolKlass>
   8:         21121        1842344  [S
   9:         37772        1743888  <symbolKlass>
  10:          2554        1655632  [I
  11:         63710        1529040  java.lang.Integer
  12:          1662        1264184  <instanceKlassKlass>
  13:          1515        1196224  <constantPoolCacheKlass>
  14:         24351        1168848  java.util.HashMap$Entry
  15:         18706        1047536  java.net.SocketTimeoutException
  16:          4301         784416  [B
 ...
  23:          2588         242616  [[I

1 个答案:

答案 0 :(得分:53)

  • [Cchar[]
  • [Sshort[]
  • [Iint[]
  • [Bbyte[]
  • [[Iint[][]

The JavaDoc for Class.getName()有详细信息。