public class org.openjdk.jmh.profile.ClassloaderProfiler implements org.openjdk.jmh.profile.InternalProfiler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.openjdk.jmh.profile.ClassloaderProfiler
super_class: java.lang.Object
{
private long loadedClasses;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long unloadedClasses;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long beforeTime;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long afterTime;
descriptor: J
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/ClassloaderProfiler;
public java.lang.String getDescription();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "Classloader profiling via standard MBeans"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/ClassloaderProfiler;
public void beforeIteration(org.openjdk.jmh.infra.BenchmarkParams, org.openjdk.jmh.infra.IterationParams);
descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;Lorg/openjdk/jmh/infra/IterationParams;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: invokestatic java.lang.management.ManagementFactory.getClassLoadingMXBean:()Ljava/lang/management/ClassLoadingMXBean;
astore 3
start local 3 1: aload 0
invokestatic java.lang.System.nanoTime:()J
putfield org.openjdk.jmh.profile.ClassloaderProfiler.beforeTime:J
2: aload 0
aload 3
invokeinterface java.lang.management.ClassLoadingMXBean.getTotalLoadedClassCount:()J
putfield org.openjdk.jmh.profile.ClassloaderProfiler.loadedClasses:J
3: goto 5
StackMap locals: org.openjdk.jmh.profile.ClassloaderProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams java.lang.management.ClassLoadingMXBean
StackMap stack: java.lang.UnsupportedOperationException
4: pop
5: StackMap locals:
StackMap stack:
aload 0
aload 3
invokeinterface java.lang.management.ClassLoadingMXBean.getUnloadedClassCount:()J
putfield org.openjdk.jmh.profile.ClassloaderProfiler.unloadedClasses:J
6: goto 8
StackMap locals:
StackMap stack: java.lang.UnsupportedOperationException
7: pop
8: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/openjdk/jmh/profile/ClassloaderProfiler;
0 9 1 benchmarkParams Lorg/openjdk/jmh/infra/BenchmarkParams;
0 9 2 iterationParams Lorg/openjdk/jmh/infra/IterationParams;
1 9 3 cl Ljava/lang/management/ClassLoadingMXBean;
Exception table:
from to target type
2 3 4 Class java.lang.UnsupportedOperationException
5 6 7 Class java.lang.UnsupportedOperationException
MethodParameters:
Name Flags
benchmarkParams
iterationParams
public java.util.Collection<? extends org.openjdk.jmh.results.Result> afterIteration(org.openjdk.jmh.infra.BenchmarkParams, org.openjdk.jmh.infra.IterationParams, org.openjdk.jmh.results.IterationResult);
descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;Lorg/openjdk/jmh/infra/IterationParams;Lorg/openjdk/jmh/results/IterationResult;)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokestatic java.lang.System.nanoTime:()J
putfield org.openjdk.jmh.profile.ClassloaderProfiler.afterTime:J
1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 2: invokestatic java.lang.management.ManagementFactory.getClassLoadingMXBean:()Ljava/lang/management/ClassLoadingMXBean;
astore 5
start local 5 3: aload 3
invokevirtual org.openjdk.jmh.results.IterationResult.getMetadata:()Lorg/openjdk/jmh/results/IterationResultMetaData;
invokevirtual org.openjdk.jmh.results.IterationResultMetaData.getAllOps:()J
lstore 6
start local 6 4: dconst_1
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
lconst_1
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
l2d
dmul
aload 0
getfield org.openjdk.jmh.profile.ClassloaderProfiler.afterTime:J
aload 0
getfield org.openjdk.jmh.profile.ClassloaderProfiler.beforeTime:J
lsub
l2d
ddiv
dstore 8
start local 8 5: aload 5
invokeinterface java.lang.management.ClassLoadingMXBean.getTotalLoadedClassCount:()J
lstore 10
start local 10 6: lload 10
aload 0
getfield org.openjdk.jmh.profile.ClassloaderProfiler.loadedClasses:J
lsub
lstore 12
start local 12 7: aload 4
new org.openjdk.jmh.results.ScalarResult
dup
ldc "\u00B7class.load"
lload 12
l2d
dload 8
ddiv
ldc "classes/sec"
getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: aload 4
new org.openjdk.jmh.results.ScalarResult
dup
ldc "\u00B7class.load.norm"
dconst_1
lload 12
l2d
dmul
lload 6
l2d
ddiv
ldc "classes/op"
getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 10 9: goto 11
StackMap locals: org.openjdk.jmh.profile.ClassloaderProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult java.util.List java.lang.management.ClassLoadingMXBean long double
StackMap stack: java.lang.UnsupportedOperationException
10: pop
11: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.lang.management.ClassLoadingMXBean.getUnloadedClassCount:()J
lstore 10
start local 10 12: lload 10
aload 0
getfield org.openjdk.jmh.profile.ClassloaderProfiler.unloadedClasses:J
lsub
lstore 12
start local 12 13: aload 4
new org.openjdk.jmh.results.ScalarResult
dup
ldc "\u00B7class.unload"
lload 12
l2d
dload 8
ddiv
ldc "classes/sec"
getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: aload 4
new org.openjdk.jmh.results.ScalarResult
dup
ldc "\u00B7class.unload.norm"
dconst_1
lload 12
l2d
dmul
lload 6
l2d
ddiv
ldc "classes/op"
getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 10 15: goto 17
StackMap locals:
StackMap stack: java.lang.UnsupportedOperationException
16: pop
17: StackMap locals:
StackMap stack:
aload 4
areturn
end local 8 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/openjdk/jmh/profile/ClassloaderProfiler;
0 18 1 benchmarkParams Lorg/openjdk/jmh/infra/BenchmarkParams;
0 18 2 iterationParams Lorg/openjdk/jmh/infra/IterationParams;
0 18 3 result Lorg/openjdk/jmh/results/IterationResult;
2 18 4 results Ljava/util/List<Lorg/openjdk/jmh/results/Result;>;
3 18 5 cl Ljava/lang/management/ClassLoadingMXBean;
4 18 6 allOps J
5 18 8 time D
6 9 10 loadedClassCount J
7 9 12 loaded J
12 15 10 unloadedClassCount J
13 15 12 unloaded J
Exception table:
from to target type
5 9 10 Class java.lang.UnsupportedOperationException
11 15 16 Class java.lang.UnsupportedOperationException
Signature: (Lorg/openjdk/jmh/infra/BenchmarkParams;Lorg/openjdk/jmh/infra/IterationParams;Lorg/openjdk/jmh/results/IterationResult;)Ljava/util/Collection<+Lorg/openjdk/jmh/results/Result;>;
MethodParameters:
Name Flags
benchmarkParams
iterationParams
result
}
SourceFile: "ClassloaderProfiler.java"