class org.openjdk.jmh.profile.PausesProfiler$Ticker extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.openjdk.jmh.profile.PausesProfiler$Ticker
super_class: java.lang.Thread
{
private final org.openjdk.jmh.util.SampleBuffer buffer;
descriptor: Lorg/openjdk/jmh/util/SampleBuffer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.openjdk.jmh.profile.PausesProfiler this$0;
descriptor: Lorg/openjdk/jmh/profile/PausesProfiler;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.openjdk.jmh.profile.PausesProfiler, org.openjdk.jmh.util.SampleBuffer);
descriptor: (Lorg/openjdk/jmh/profile/PausesProfiler;Lorg/openjdk/jmh/util/SampleBuffer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 // org.openjdk.jmh.profile.PausesProfiler$Ticker this
start local 2 // org.openjdk.jmh.util.SampleBuffer buffer
0: .line 127
aload 0 /* this */
aload 1
putfield org.openjdk.jmh.profile.PausesProfiler$Ticker.this$0:Lorg/openjdk/jmh/profile/PausesProfiler;
aload 0 /* this */
invokespecial java.lang.Thread.<init>:()V
1: .line 128
aload 0 /* this */
aload 2 /* buffer */
putfield org.openjdk.jmh.profile.PausesProfiler$Ticker.buffer:Lorg/openjdk/jmh/util/SampleBuffer;
2: .line 129
aload 0 /* this */
bipush 10
invokevirtual org.openjdk.jmh.profile.PausesProfiler$Ticker.setPriority:(I)V
3: .line 130
aload 0 /* this */
iconst_1
invokevirtual org.openjdk.jmh.profile.PausesProfiler$Ticker.setDaemon:(Z)V
4: .line 131
return
end local 2 // org.openjdk.jmh.util.SampleBuffer buffer
end local 0 // org.openjdk.jmh.profile.PausesProfiler$Ticker this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/openjdk/jmh/profile/PausesProfiler$Ticker;
0 5 2 buffer Lorg/openjdk/jmh/util/SampleBuffer;
MethodParameters:
Name Flags
this$0 final
buffer
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=1
start local 0 // org.openjdk.jmh.profile.PausesProfiler$Ticker this
0: .line 135
invokestatic java.lang.System.nanoTime:()J
lstore 1 /* lastTime */
start local 1 // long lastTime
1: .line 136
goto 9
2: .line 137
StackMap locals: long
StackMap stack:
aload 0 /* this */
getfield org.openjdk.jmh.profile.PausesProfiler$Ticker.this$0:Lorg/openjdk/jmh/profile/PausesProfiler;
getfield org.openjdk.jmh.profile.PausesProfiler.expectedNs:J
invokestatic java.util.concurrent.locks.LockSupport.parkNanos:(J)V
3: .line 138
invokestatic java.lang.System.nanoTime:()J
lstore 3 /* time */
start local 3 // long time
4: .line 140
lload 3 /* time */
lload 1 /* lastTime */
lsub
lstore 5 /* actualNs */
start local 5 // long actualNs
5: .line 141
lload 5 /* actualNs */
aload 0 /* this */
getfield org.openjdk.jmh.profile.PausesProfiler$Ticker.this$0:Lorg/openjdk/jmh/profile/PausesProfiler;
getfield org.openjdk.jmh.profile.PausesProfiler.expectedNs:J
lsub
lstore 7 /* delta */
start local 7 // long delta
6: .line 142
lload 7 /* delta */
aload 0 /* this */
getfield org.openjdk.jmh.profile.PausesProfiler$Ticker.this$0:Lorg/openjdk/jmh/profile/PausesProfiler;
getfield org.openjdk.jmh.profile.PausesProfiler.thresh:J
lcmp
ifle 8
7: .line 145
aload 0 /* this */
getfield org.openjdk.jmh.profile.PausesProfiler$Ticker.buffer:Lorg/openjdk/jmh/util/SampleBuffer;
lload 7 /* delta */
aload 0 /* this */
getfield org.openjdk.jmh.profile.PausesProfiler$Ticker.this$0:Lorg/openjdk/jmh/profile/PausesProfiler;
getfield org.openjdk.jmh.profile.PausesProfiler.expectedNs:J
ldc 2
ldiv
ladd
invokevirtual org.openjdk.jmh.util.SampleBuffer.add:(J)V
8: .line 147
StackMap locals: long long long
StackMap stack:
lload 3 /* time */
lstore 1 /* lastTime */
end local 7 // long delta
end local 5 // long actualNs
end local 3 // long time
9: .line 136
StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.interrupted:()Z
ifeq 2
10: .line 149
return
end local 1 // long lastTime
end local 0 // org.openjdk.jmh.profile.PausesProfiler$Ticker this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/openjdk/jmh/profile/PausesProfiler$Ticker;
1 11 1 lastTime J
4 9 3 time J
5 9 5 actualNs J
6 9 7 delta J
}
SourceFile: "PausesProfiler.java"
NestHost: org.openjdk.jmh.profile.PausesProfiler
InnerClasses:
private Ticker = org.openjdk.jmh.profile.PausesProfiler$Ticker of org.openjdk.jmh.profile.PausesProfiler