public final class com.sun.javafx.geom.DirtyRegionPool
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.javafx.geom.DirtyRegionPool
super_class: java.lang.Object
{
private static final int POOL_SIZE_MIN;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int EXPIRATION_TIME;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3000
private static final int COUNT_BETWEEN_EXPIRATION_CHECK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 90
private final int containerSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int clearCounter;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final java.util.Deque<com.sun.javafx.geom.DirtyRegionContainer> fixed;
descriptor: Ljava/util/Deque;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Deque<Lcom/sun/javafx/geom/DirtyRegionContainer;>;
private final java.util.Deque<com.sun.javafx.geom.DirtyRegionPool$PoolItem> unlocked;
descriptor: Ljava/util/Deque;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Deque<Lcom/sun/javafx/geom/DirtyRegionPool$PoolItem;>;
private final java.util.Deque<com.sun.javafx.geom.DirtyRegionPool$PoolItem> locked;
descriptor: Ljava/util/Deque;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Deque<Lcom/sun/javafx/geom/DirtyRegionPool$PoolItem;>;
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
bipush 90
putfield com.sun.javafx.geom.DirtyRegionPool.clearCounter:I
2: aload 0
iload 1
putfield com.sun.javafx.geom.DirtyRegionPool.containerSize:I
3: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield com.sun.javafx.geom.DirtyRegionPool.fixed:Ljava/util/Deque;
4: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
5: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield com.sun.javafx.geom.DirtyRegionPool.locked:Ljava/util/Deque;
6: iconst_0
istore 2
start local 2 7: goto 10
8: StackMap locals: com.sun.javafx.geom.DirtyRegionPool int int
StackMap stack:
aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.fixed:Ljava/util/Deque;
new com.sun.javafx.geom.DirtyRegionContainer
dup
iload 1
invokespecial com.sun.javafx.geom.DirtyRegionContainer.<init>:(I)V
invokeinterface java.util.Deque.add:(Ljava/lang/Object;)Z
pop
9: iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
iconst_4
if_icmplt 8
end local 2 11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/javafx/geom/DirtyRegionPool;
0 12 1 containerSize I
7 11 2 i I
MethodParameters:
Name Flags
containerSize
public com.sun.javafx.geom.DirtyRegionContainer checkOut();
descriptor: ()Lcom/sun/javafx/geom/DirtyRegionContainer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.geom.DirtyRegionPool.clearExpired:()V
1: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.fixed:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifne 3
2: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.fixed:Ljava/util/Deque;
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
checkcast com.sun.javafx.geom.DirtyRegionContainer
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifne 7
4: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
checkcast com.sun.javafx.geom.DirtyRegionPool$PoolItem
astore 1
start local 1 5: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.locked:Ljava/util/Deque;
aload 1
invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
6: aload 1
getfield com.sun.javafx.geom.DirtyRegionPool$PoolItem.container:Lcom/sun/javafx/geom/DirtyRegionContainer;
areturn
end local 1 7: StackMap locals:
StackMap stack:
new com.sun.javafx.geom.DirtyRegionContainer
dup
aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.containerSize:I
invokespecial com.sun.javafx.geom.DirtyRegionContainer.<init>:(I)V
astore 1
start local 1 8: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.locked:Ljava/util/Deque;
new com.sun.javafx.geom.DirtyRegionPool$PoolItem
dup
aload 0
aconst_null
ldc -1
invokespecial com.sun.javafx.geom.DirtyRegionPool$PoolItem.<init>:(Lcom/sun/javafx/geom/DirtyRegionPool;Lcom/sun/javafx/geom/DirtyRegionContainer;J)V
invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
9: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/javafx/geom/DirtyRegionPool;
5 7 1 item Lcom/sun/javafx/geom/DirtyRegionPool$PoolItem;
8 10 1 c Lcom/sun/javafx/geom/DirtyRegionContainer;
public void checkIn(com.sun.javafx.geom.DirtyRegionContainer);
descriptor: (Lcom/sun/javafx/geom/DirtyRegionContainer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.javafx.geom.DirtyRegionContainer.reset:()V
1: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.locked:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifeq 4
2: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.fixed:Ljava/util/Deque;
aload 1
invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
3: goto 8
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.locked:Ljava/util/Deque;
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
checkcast com.sun.javafx.geom.DirtyRegionPool$PoolItem
astore 2
start local 2 5: aload 2
aload 1
putfield com.sun.javafx.geom.DirtyRegionPool$PoolItem.container:Lcom/sun/javafx/geom/DirtyRegionContainer;
6: aload 2
invokestatic java.lang.System.currentTimeMillis:()J
putfield com.sun.javafx.geom.DirtyRegionPool$PoolItem.timeStamp:J
7: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
aload 2
invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
end local 2 8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/javafx/geom/DirtyRegionPool;
0 9 1 drc Lcom/sun/javafx/geom/DirtyRegionContainer;
5 8 2 item Lcom/sun/javafx/geom/DirtyRegionPool$PoolItem;
MethodParameters:
Name Flags
drc
private void clearExpired();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.javafx.geom.DirtyRegionPool.clearCounter:I
dup_x1
iconst_1
isub
putfield com.sun.javafx.geom.DirtyRegionPool.clearCounter:I
ifne 10
3: aload 0
bipush 90
putfield com.sun.javafx.geom.DirtyRegionPool.clearCounter:I
4: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
invokeinterface java.util.Deque.peekLast:()Ljava/lang/Object;
checkcast com.sun.javafx.geom.DirtyRegionPool$PoolItem
astore 1
start local 1 5: invokestatic java.lang.System.currentTimeMillis:()J
lstore 2
start local 2 6: goto 9
7: StackMap locals: com.sun.javafx.geom.DirtyRegionPool$PoolItem long
StackMap stack:
aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
invokeinterface java.util.Deque.removeLast:()Ljava/lang/Object;
pop
8: aload 0
getfield com.sun.javafx.geom.DirtyRegionPool.unlocked:Ljava/util/Deque;
invokeinterface java.util.Deque.peekLast:()Ljava/lang/Object;
checkcast com.sun.javafx.geom.DirtyRegionPool$PoolItem
astore 1
9: StackMap locals:
StackMap stack:
aload 1
ifnull 10
aload 1
getfield com.sun.javafx.geom.DirtyRegionPool$PoolItem.timeStamp:J
ldc 3000
ladd
lload 2
lcmp
iflt 7
end local 2 end local 1 10: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/javafx/geom/DirtyRegionPool;
5 10 1 i Lcom/sun/javafx/geom/DirtyRegionPool$PoolItem;
6 10 2 now J
}
SourceFile: "DirtyRegionPool.java"
NestMembers:
com.sun.javafx.geom.DirtyRegionPool$PoolItem
InnerClasses:
private PoolItem = com.sun.javafx.geom.DirtyRegionPool$PoolItem of com.sun.javafx.geom.DirtyRegionPool