public class sun.misc.GC$LatencyRequest implements java.lang.Comparable<sun.misc.GC$LatencyRequest>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.misc.GC$LatencyRequest
super_class: java.lang.Object
{
private static long counter;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.SortedSet<sun.misc.GC$LatencyRequest> requests;
descriptor: Ljava/util/SortedSet;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/SortedSet<Lsun/misc/GC$LatencyRequest;>;
private long latency;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long id;
descriptor: J
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: lconst_0
putstatic sun.misc.GC$LatencyRequest.counter:J
1: aconst_null
putstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
return
LocalVariableTable:
Start End Slot Name Signature
private static void adjustLatencyIfNeeded();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
ifnull 1
getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
invokeinterface java.util.SortedSet.isEmpty:()Z
ifeq 4
1: StackMap locals:
StackMap stack:
getstatic sun.misc.GC.latencyTarget:J
ldc 9223372036854775807
lcmp
ifeq 7
2: ldc 9223372036854775807
invokestatic sun.misc.GC.setLatencyTarget:(J)V
3: goto 7
4: StackMap locals:
StackMap stack:
getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
invokeinterface java.util.SortedSet.first:()Ljava/lang/Object;
checkcast sun.misc.GC$LatencyRequest
astore 0
start local 0 5: aload 0
getfield sun.misc.GC$LatencyRequest.latency:J
getstatic sun.misc.GC.latencyTarget:J
lcmp
ifeq 7
6: aload 0
getfield sun.misc.GC$LatencyRequest.latency:J
invokestatic sun.misc.GC.setLatencyTarget:(J)V
end local 0 7: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
5 7 0 r Lsun/misc/GC$LatencyRequest;
private void <init>(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: lload 1
lconst_0
lcmp
ifgt 5
2: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Non-positive latency: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: sun.misc.GC$LatencyRequest long
StackMap stack:
aload 0
lload 1
putfield sun.misc.GC$LatencyRequest.latency:J
6: getstatic sun.misc.GC.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
7: aload 0
getstatic sun.misc.GC$LatencyRequest.counter:J
lconst_1
ladd
dup2
putstatic sun.misc.GC$LatencyRequest.counter:J
putfield sun.misc.GC$LatencyRequest.id:J
8: getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
ifnonnull 10
9: new java.util.TreeSet
dup
invokespecial java.util.TreeSet.<init>:()V
putstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
10: StackMap locals: java.lang.Object
StackMap stack:
getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
aload 0
invokeinterface java.util.SortedSet.add:(Ljava/lang/Object;)Z
pop
11: invokestatic sun.misc.GC$LatencyRequest.adjustLatencyIfNeeded:()V
12: aload 3
monitorexit
13: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
14: aload 3
monitorexit
15: athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/misc/GC$LatencyRequest;
0 17 1 ms J
Exception table:
from to target type
7 13 14 any
14 15 14 any
MethodParameters:
Name Flags
ms
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: getstatic sun.misc.GC.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield sun.misc.GC$LatencyRequest.latency:J
ldc 9223372036854775807
lcmp
ifne 3
2: new java.lang.IllegalStateException
dup
ldc "Request already cancelled"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.Object
StackMap stack:
getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
aload 0
invokeinterface java.util.SortedSet.remove:(Ljava/lang/Object;)Z
ifne 7
4: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Latency request "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
5: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
getstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
invokeinterface java.util.SortedSet.isEmpty:()Z
ifeq 8
aconst_null
putstatic sun.misc.GC$LatencyRequest.requests:Ljava/util/SortedSet;
8: StackMap locals:
StackMap stack:
aload 0
ldc 9223372036854775807
putfield sun.misc.GC$LatencyRequest.latency:J
9: invokestatic sun.misc.GC$LatencyRequest.adjustLatencyIfNeeded:()V
10: aload 1
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 1
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/misc/GC$LatencyRequest;
Exception table:
from to target type
1 11 12 any
12 13 12 any
public int compareTo(sun.misc.GC$LatencyRequest);
descriptor: (Lsun/misc/GC$LatencyRequest;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.misc.GC$LatencyRequest.latency:J
aload 1
getfield sun.misc.GC$LatencyRequest.latency:J
lsub
lstore 2
start local 2 1: lload 2
lconst_0
lcmp
ifne 2
aload 0
getfield sun.misc.GC$LatencyRequest.id:J
aload 1
getfield sun.misc.GC$LatencyRequest.id:J
lsub
lstore 2
2: StackMap locals: long
StackMap stack:
lload 2
lconst_0
lcmp
ifge 3
iconst_m1
goto 5
StackMap locals:
StackMap stack:
3: lload 2
lconst_0
lcmp
ifle 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/misc/GC$LatencyRequest;
0 6 1 r Lsun/misc/GC$LatencyRequest;
1 6 2 d J
MethodParameters:
Name Flags
r
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc Lsun/misc/GC$LatencyRequest;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: ldc "["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.misc.GC$LatencyRequest.latency:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.misc.GC$LatencyRequest.id:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/misc/GC$LatencyRequest;
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast sun.misc.GC$LatencyRequest
invokevirtual sun.misc.GC$LatencyRequest.compareTo:(Lsun/misc/GC$LatencyRequest;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Lsun/misc/GC$LatencyRequest;>;
SourceFile: "GC.java"
NestHost: sun.misc.GC
InnerClasses:
public LatencyRequest = sun.misc.GC$LatencyRequest of sun.misc.GC