public final class com.sun.jndi.ldap.pool.PoolCleaner extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.jndi.ldap.pool.PoolCleaner
super_class: java.lang.Thread
{
private final com.sun.jndi.ldap.pool.Pool[] pools;
descriptor: [Lcom/sun/jndi/ldap/pool/Pool;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long period;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(long, com.sun.jndi.ldap.pool.Pool[]);
descriptor: (J[Lcom/sun/jndi/ldap/pool/Pool;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
invokespecial java.lang.Thread.<init>:()V
1: aload 0
lload 1
putfield com.sun.jndi.ldap.pool.PoolCleaner.period:J
2: aload 0
aload 3
invokevirtual com.sun.jndi.ldap.pool.Pool[].clone:()Ljava/lang/Object;
checkcast com.sun.jndi.ldap.pool.Pool[]
putfield com.sun.jndi.ldap.pool.PoolCleaner.pools:[Lcom/sun/jndi/ldap/pool/Pool;
3: aload 0
iconst_1
invokevirtual com.sun.jndi.ldap.pool.PoolCleaner.setDaemon:(Z)V
4: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/jndi/ldap/pool/PoolCleaner;
0 5 1 period J
0 5 3 pools [Lcom/sun/jndi/ldap/pool/Pool;
MethodParameters:
Name Flags
period
pools
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
dup
astore 3
monitorenter
1: aload 0
aload 0
getfield com.sun.jndi.ldap.pool.PoolCleaner.period:J
invokevirtual java.lang.Object.wait:(J)V
2: goto 4
StackMap locals: com.sun.jndi.ldap.pool.PoolCleaner top top com.sun.jndi.ldap.pool.PoolCleaner
StackMap stack: java.lang.InterruptedException
3: pop
4: StackMap locals:
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
aload 0
getfield com.sun.jndi.ldap.pool.PoolCleaner.period:J
lsub
lstore 1
start local 1 5: iconst_0
istore 4
start local 4 6: goto 10
7: StackMap locals: com.sun.jndi.ldap.pool.PoolCleaner long com.sun.jndi.ldap.pool.PoolCleaner int
StackMap stack:
aload 0
getfield com.sun.jndi.ldap.pool.PoolCleaner.pools:[Lcom/sun/jndi/ldap/pool/Pool;
iload 4
aaload
ifnull 9
8: aload 0
getfield com.sun.jndi.ldap.pool.PoolCleaner.pools:[Lcom/sun/jndi/ldap/pool/Pool;
iload 4
aaload
lload 1
invokevirtual com.sun.jndi.ldap.pool.Pool.expire:(J)V
9: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
aload 0
getfield com.sun.jndi.ldap.pool.PoolCleaner.pools:[Lcom/sun/jndi/ldap/pool/Pool;
arraylength
if_icmplt 7
end local 4 11: aload 3
monitorexit
12: goto 0
end local 1 StackMap locals: com.sun.jndi.ldap.pool.PoolCleaner top top com.sun.jndi.ldap.pool.PoolCleaner
StackMap stack: java.lang.Throwable
13: aload 3
monitorexit
14: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/jndi/ldap/pool/PoolCleaner;
5 13 1 threshold J
6 11 4 i I
Exception table:
from to target type
1 2 3 Class java.lang.InterruptedException
1 12 13 any
13 14 13 any
}
SourceFile: "PoolCleaner.java"