final class sun.nio.ch.WindowsSelectorImpl$SelectThread extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.nio.ch.WindowsSelectorImpl$SelectThread
super_class: java.lang.Thread
{
private int index;
descriptor: I
flags: (0x0002) ACC_PRIVATE
sun.nio.ch.WindowsSelectorImpl$SubSelector subSelector;
descriptor: Lsun/nio/ch/WindowsSelectorImpl$SubSelector;
flags: (0x0000)
private long lastRun;
descriptor: J
flags: (0x0002) ACC_PRIVATE
final sun.nio.ch.WindowsSelectorImpl this$0;
descriptor: Lsun/nio/ch/WindowsSelectorImpl;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(sun.nio.ch.WindowsSelectorImpl, int);
descriptor: (Lsun/nio/ch/WindowsSelectorImpl;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 // sun.nio.ch.WindowsSelectorImpl$SelectThread this
start local 2 // int i
0: .line 406
aload 0 /* this */
aload 1
putfield sun.nio.ch.WindowsSelectorImpl$SelectThread.this$0:Lsun/nio/ch/WindowsSelectorImpl;
aload 0 /* this */
invokespecial java.lang.Thread.<init>:()V
1: .line 404
aload 0 /* this */
lconst_0
putfield sun.nio.ch.WindowsSelectorImpl$SelectThread.lastRun:J
2: .line 407
aload 0 /* this */
iload 2 /* i */
putfield sun.nio.ch.WindowsSelectorImpl$SelectThread.index:I
3: .line 408
aload 0 /* this */
new sun.nio.ch.WindowsSelectorImpl$SubSelector
dup
aload 1
iload 2 /* i */
invokespecial sun.nio.ch.WindowsSelectorImpl$SubSelector.<init>:(Lsun/nio/ch/WindowsSelectorImpl;I)V
putfield sun.nio.ch.WindowsSelectorImpl$SelectThread.subSelector:Lsun/nio/ch/WindowsSelectorImpl$SubSelector;
4: .line 410
aload 0 /* this */
aload 1
getfield sun.nio.ch.WindowsSelectorImpl.startLock:Lsun/nio/ch/WindowsSelectorImpl$StartLock;
getfield sun.nio.ch.WindowsSelectorImpl$StartLock.runsCounter:J
putfield sun.nio.ch.WindowsSelectorImpl$SelectThread.lastRun:J
5: .line 411
return
end local 2 // int i
end local 0 // sun.nio.ch.WindowsSelectorImpl$SelectThread this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/nio/ch/WindowsSelectorImpl$SelectThread;
0 6 2 i I
MethodParameters:
Name Flags
this$0 final
i
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 // sun.nio.ch.WindowsSelectorImpl$SelectThread this
0: .line 416
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.nio.ch.WindowsSelectorImpl$SelectThread.this$0:Lsun/nio/ch/WindowsSelectorImpl;
getfield sun.nio.ch.WindowsSelectorImpl.startLock:Lsun/nio/ch/WindowsSelectorImpl$StartLock;
aload 0 /* this */
invokevirtual sun.nio.ch.WindowsSelectorImpl$StartLock.waitForStart:(Lsun/nio/ch/WindowsSelectorImpl$SelectThread;)Z
ifeq 2
1: .line 417
return
2: .line 420
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.nio.ch.WindowsSelectorImpl$SelectThread.subSelector:Lsun/nio/ch/WindowsSelectorImpl$SubSelector;
aload 0 /* this */
getfield sun.nio.ch.WindowsSelectorImpl$SelectThread.index:I
invokevirtual sun.nio.ch.WindowsSelectorImpl$SubSelector.poll:(I)I
pop
3: .line 421
goto 6
StackMap locals:
StackMap stack: java.io.IOException
4: astore 1 /* e */
start local 1 // java.io.IOException e
5: .line 423
aload 0 /* this */
getfield sun.nio.ch.WindowsSelectorImpl$SelectThread.this$0:Lsun/nio/ch/WindowsSelectorImpl;
getfield sun.nio.ch.WindowsSelectorImpl.finishLock:Lsun/nio/ch/WindowsSelectorImpl$FinishLock;
aload 1 /* e */
invokevirtual sun.nio.ch.WindowsSelectorImpl$FinishLock.setException:(Ljava/io/IOException;)V
end local 1 // java.io.IOException e
6: .line 427
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.nio.ch.WindowsSelectorImpl$SelectThread.this$0:Lsun/nio/ch/WindowsSelectorImpl;
getfield sun.nio.ch.WindowsSelectorImpl.finishLock:Lsun/nio/ch/WindowsSelectorImpl$FinishLock;
invokevirtual sun.nio.ch.WindowsSelectorImpl$FinishLock.threadFinished:()V
7: .line 413
goto 0
end local 0 // sun.nio.ch.WindowsSelectorImpl$SelectThread this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/nio/ch/WindowsSelectorImpl$SelectThread;
5 6 1 e Ljava/io/IOException;
Exception table:
from to target type
2 3 4 Class java.io.IOException
}
SourceFile: "WindowsSelectorImpl.java"
NestHost: sun.nio.ch.WindowsSelectorImpl
InnerClasses:
private final FinishLock = sun.nio.ch.WindowsSelectorImpl$FinishLock of sun.nio.ch.WindowsSelectorImpl
private final SelectThread = sun.nio.ch.WindowsSelectorImpl$SelectThread of sun.nio.ch.WindowsSelectorImpl
private final StartLock = sun.nio.ch.WindowsSelectorImpl$StartLock of sun.nio.ch.WindowsSelectorImpl
private final SubSelector = sun.nio.ch.WindowsSelectorImpl$SubSelector of sun.nio.ch.WindowsSelectorImpl