public class sun.tools.jconsole.MemoryPoolProxy
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.tools.jconsole.MemoryPoolProxy
super_class: java.lang.Object
{
private java.lang.String poolName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private sun.tools.jconsole.ProxyClient client;
descriptor: Lsun/tools/jconsole/ProxyClient;
flags: (0x0002) ACC_PRIVATE
private java.lang.management.MemoryPoolMXBean pool;
descriptor: Ljava/lang/management/MemoryPoolMXBean;
flags: (0x0002) ACC_PRIVATE
private java.util.Map<javax.management.ObjectName, java.lang.Long> gcMBeans;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljavax/management/ObjectName;Ljava/lang/Long;>;
private com.sun.management.GcInfo lastGcInfo;
descriptor: Lcom/sun/management/GcInfo;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lsun/tools/jconsole/MemoryPoolProxy;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.tools.jconsole.MemoryPoolProxy.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(sun.tools.jconsole.ProxyClient, javax.management.ObjectName);
descriptor: (Lsun/tools/jconsole/ProxyClient;Ljavax/management/ObjectName;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.tools.jconsole.MemoryPoolProxy.client:Lsun/tools/jconsole/ProxyClient;
2: aload 0
aload 1
aload 2
ldc Ljava/lang/management/MemoryPoolMXBean;
invokevirtual sun.tools.jconsole.ProxyClient.getMXBean:(Ljavax/management/ObjectName;Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.management.MemoryPoolMXBean
putfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
3: aload 0
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.getName:()Ljava/lang/String;
putfield sun.tools.jconsole.MemoryPoolProxy.poolName:Ljava/lang/String;
4: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield sun.tools.jconsole.MemoryPoolProxy.gcMBeans:Ljava/util/Map;
5: aload 0
aconst_null
putfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
6: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.getMemoryManagerNames:()[Ljava/lang/String;
astore 3
start local 3 7: aload 3
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 18
StackMap locals: sun.tools.jconsole.MemoryPoolProxy sun.tools.jconsole.ProxyClient javax.management.ObjectName java.lang.String[] top int int java.lang.String[]
StackMap stack:
8: aload 7
iload 5
aaload
astore 4
start local 4 9: new javax.management.ObjectName
dup
new java.lang.StringBuilder
dup
ldc "java.lang:type=GarbageCollector,name="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
10: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
astore 8
start local 8 12: aload 1
aload 8
invokevirtual sun.tools.jconsole.ProxyClient.isRegistered:(Ljavax/management/ObjectName;)Z
ifeq 17
13: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.gcMBeans:Ljava/util/Map;
aload 8
lconst_0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 14: goto 17
StackMap locals: sun.tools.jconsole.MemoryPoolProxy sun.tools.jconsole.ProxyClient javax.management.ObjectName java.lang.String[] java.lang.String int int java.lang.String[]
StackMap stack: java.lang.Exception
15: pop
16: getstatic sun.tools.jconsole.MemoryPoolProxy.$assertionsDisabled:Z
ifne 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 4 17: StackMap locals: sun.tools.jconsole.MemoryPoolProxy sun.tools.jconsole.ProxyClient javax.management.ObjectName java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
18: iload 5
iload 6
if_icmplt 8
19: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/tools/jconsole/MemoryPoolProxy;
0 20 1 client Lsun/tools/jconsole/ProxyClient;
0 20 2 poolName Ljavax/management/ObjectName;
7 20 3 mgrNames [Ljava/lang/String;
9 17 4 name Ljava/lang/String;
12 14 8 mbeanName Ljavax/management/ObjectName;
Exception table:
from to target type
9 14 15 Class java.lang.Exception
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
client
poolName
public boolean isCollectedMemoryPool();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.gcMBeans:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tools/jconsole/MemoryPoolProxy;
public sun.tools.jconsole.MemoryPoolStat getStat();
descriptor: ()Lsun/tools/jconsole/MemoryPoolStat;
flags: (0x0001) ACC_PUBLIC
Code:
stack=16, locals=19, args_size=1
start local 0 0: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.isUsageThresholdSupported:()Z
ifeq 2
1: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.getUsageThreshold:()J
goto 3
2: StackMap locals:
StackMap stack:
ldc -1
3: StackMap locals:
StackMap stack: long
lstore 1
start local 1 4: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.isCollectionUsageThresholdSupported:()Z
ifeq 6
5: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.getCollectionUsageThreshold:()J
goto 7
6: StackMap locals: long
StackMap stack:
ldc -1
7: StackMap locals:
StackMap stack: long
lstore 3
start local 3 8: lconst_0
lstore 5
start local 5 9: lconst_0
lstore 7
start local 7 10: aconst_null
astore 9
start local 9 11: aconst_null
astore 10
start local 10 12: lconst_0
lstore 11
start local 11 13: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
ifnull 19
14: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getId:()J
lstore 11
15: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getStartTime:()J
lstore 5
16: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getEndTime:()J
lstore 7
17: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getMemoryUsageBeforeGc:()Ljava/util/Map;
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.poolName:Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.management.MemoryUsage
astore 9
18: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getMemoryUsageAfterGc:()Ljava/util/Map;
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.poolName:Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.management.MemoryUsage
astore 10
19: StackMap locals: sun.tools.jconsole.MemoryPoolProxy long long long long java.lang.management.MemoryUsage java.lang.management.MemoryUsage long
StackMap stack:
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.gcMBeans:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
astore 13
start local 13 20: aload 13
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 15
goto 39
StackMap locals: sun.tools.jconsole.MemoryPoolProxy long long long long java.lang.management.MemoryUsage java.lang.management.MemoryUsage long java.util.Set top java.util.Iterator
StackMap stack:
21: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 14
start local 14 22: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.client:Lsun/tools/jconsole/ProxyClient;
aload 14
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast javax.management.ObjectName
23: ldc Lcom/sun/management/GarbageCollectorMXBean;
24: invokevirtual sun.tools.jconsole.ProxyClient.getMXBean:(Ljavax/management/ObjectName;Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.sun.management.GarbageCollectorMXBean
25: astore 16
start local 16 26: aload 14
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.Long
astore 17
start local 17 27: aload 16
invokeinterface com.sun.management.GarbageCollectorMXBean.getCollectionCount:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
astore 18
start local 18 28: aload 18
invokevirtual java.lang.Long.longValue:()J
aload 17
invokevirtual java.lang.Long.longValue:()J
lcmp
ifle 39
29: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.gcMBeans:Ljava/util/Map;
aload 14
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast javax.management.ObjectName
aload 18
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: aload 0
aload 16
invokeinterface com.sun.management.GarbageCollectorMXBean.getLastGcInfo:()Lcom/sun/management/GcInfo;
putfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
31: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getEndTime:()J
lload 7
lcmp
ifle 39
32: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getId:()J
lstore 11
33: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getStartTime:()J
lstore 5
34: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getEndTime:()J
lstore 7
35: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getMemoryUsageBeforeGc:()Ljava/util/Map;
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.poolName:Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.management.MemoryUsage
astore 9
36: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.lastGcInfo:Lcom/sun/management/GcInfo;
invokevirtual com.sun.management.GcInfo.getMemoryUsageAfterGc:()Ljava/util/Map;
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.poolName:Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.management.MemoryUsage
astore 10
37: getstatic sun.tools.jconsole.MemoryPoolProxy.$assertionsDisabled:Z
ifne 38
aload 9
ifnonnull 38
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
38: StackMap locals: sun.tools.jconsole.MemoryPoolProxy long long long long java.lang.management.MemoryUsage java.lang.management.MemoryUsage long java.util.Set java.util.Map$Entry java.util.Iterator com.sun.management.GarbageCollectorMXBean java.lang.Long java.lang.Long
StackMap stack:
getstatic sun.tools.jconsole.MemoryPoolProxy.$assertionsDisabled:Z
ifne 39
aload 10
ifnonnull 39
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 18 end local 17 end local 16 end local 14 39: StackMap locals: sun.tools.jconsole.MemoryPoolProxy long long long long java.lang.management.MemoryUsage java.lang.management.MemoryUsage long java.util.Set top java.util.Iterator
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
40: aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.pool:Ljava/lang/management/MemoryPoolMXBean;
invokeinterface java.lang.management.MemoryPoolMXBean.getUsage:()Ljava/lang/management/MemoryUsage;
astore 14
start local 14 41: new sun.tools.jconsole.MemoryPoolStat
dup
aload 0
getfield sun.tools.jconsole.MemoryPoolProxy.poolName:Ljava/lang/String;
42: lload 1
43: aload 14
44: lload 11
45: lload 5
46: lload 7
47: lload 3
48: aload 9
49: aload 10
50: invokespecial sun.tools.jconsole.MemoryPoolStat.<init>:(Ljava/lang/String;JLjava/lang/management/MemoryUsage;JJJJLjava/lang/management/MemoryUsage;Ljava/lang/management/MemoryUsage;)V
areturn
end local 14 end local 13 end local 11 end local 10 end local 9 end local 7 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 51 0 this Lsun/tools/jconsole/MemoryPoolProxy;
4 51 1 usageThreshold J
8 51 3 collectThreshold J
9 51 5 lastGcStartTime J
10 51 7 lastGcEndTime J
11 51 9 beforeGcUsage Ljava/lang/management/MemoryUsage;
12 51 10 afterGcUsage Ljava/lang/management/MemoryUsage;
13 51 11 gcId J
20 51 13 set Ljava/util/Set<Ljava/util/Map$Entry<Ljavax/management/ObjectName;Ljava/lang/Long;>;>;
22 39 14 e Ljava/util/Map$Entry<Ljavax/management/ObjectName;Ljava/lang/Long;>;
26 39 16 gc Lcom/sun/management/GarbageCollectorMXBean;
27 39 17 gcCount Ljava/lang/Long;
28 39 18 newCount Ljava/lang/Long;
41 51 14 usage Ljava/lang/management/MemoryUsage;
Exceptions:
throws java.io.IOException
}
SourceFile: "MemoryPoolProxy.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map