class sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread
super_class: java.lang.Thread
{
sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal debugger;
descriptor: Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
flags: (0x0000)
sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask task;
descriptor: Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
flags: (0x0000)
sun.jvm.hotspot.debugger.DebuggerException lastException;
descriptor: Lsun/jvm/hotspot/debugger/DebuggerException;
flags: (0x0000)
final sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal this$0;
descriptor: Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal, sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal);
descriptor: (Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread this
start local 2 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal debugger
0: .line 151
aload 0 /* this */
aload 1
putfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
aload 0 /* this */
invokespecial java.lang.Thread.<init>:()V
1: .line 152
aload 0 /* this */
aload 2 /* debugger */
putfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.debugger:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
2: .line 153
aload 0 /* this */
iconst_1
invokevirtual sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.setDaemon:(Z)V
3: .line 154
return
end local 2 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal debugger
end local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
0 4 2 debugger Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
MethodParameters:
Name Flags
this$0 final
debugger
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread this
0: .line 157
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.workerThread:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
dup
astore 1
monitorenter
1: .line 159
StackMap locals: sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread
StackMap stack:
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.task:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
ifnull 9
2: .line 160
aload 0 /* this */
aconst_null
putfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.lastException:Lsun/jvm/hotspot/debugger/DebuggerException;
3: .line 162
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.task:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.debugger:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
invokeinterface sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask.doit:(Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;)V
4: .line 163
goto 7
StackMap locals:
StackMap stack: sun.jvm.hotspot.debugger.DebuggerException
5: astore 2 /* exp */
start local 2 // sun.jvm.hotspot.debugger.DebuggerException exp
6: .line 164
aload 0 /* this */
aload 2 /* exp */
putfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.lastException:Lsun/jvm/hotspot/debugger/DebuggerException;
end local 2 // sun.jvm.hotspot.debugger.DebuggerException exp
7: .line 166
StackMap locals:
StackMap stack:
aload 0 /* this */
aconst_null
putfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.task:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
8: .line 167
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.workerThread:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
invokevirtual java.lang.Object.notifyAll:()V
9: .line 171
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.workerThread:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
invokevirtual java.lang.Object.wait:()V
10: .line 172
goto 1
StackMap locals:
StackMap stack: java.lang.InterruptedException
11: pop
12: .line 158
goto 1
13: .line 157
StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
14: athrow
end local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
6 7 2 exp Lsun/jvm/hotspot/debugger/DebuggerException;
Exception table:
from to target type
3 4 5 Class sun.jvm.hotspot.debugger.DebuggerException
9 10 11 Class java.lang.InterruptedException
1 14 13 any
public sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask execute(sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask);
descriptor: (Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;)Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread this
start local 1 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask task
0: .line 178
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.workerThread:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
dup
astore 2
monitorenter
1: .line 179
aload 0 /* this */
aload 1 /* task */
putfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.task:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
2: .line 180
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.workerThread:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
invokevirtual java.lang.Object.notifyAll:()V
3: .line 181
goto 7
4: .line 183
StackMap locals: sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread
StackMap stack:
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.this$0:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal;
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal.workerThread:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
invokevirtual java.lang.Object.wait:()V
5: .line 184
goto 7
StackMap locals:
StackMap stack: java.lang.InterruptedException
6: pop
7: .line 181
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.task:Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
ifnonnull 4
8: .line 186
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.lastException:Lsun/jvm/hotspot/debugger/DebuggerException;
ifnull 10
9: .line 187
new sun.jvm.hotspot.debugger.DebuggerException
dup
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.lastException:Lsun/jvm/hotspot/debugger/DebuggerException;
invokevirtual sun.jvm.hotspot.debugger.DebuggerException.getMessage:()Ljava/lang/String;
aload 0 /* this */
getfield sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread.lastException:Lsun/jvm/hotspot/debugger/DebuggerException;
invokespecial sun.jvm.hotspot.debugger.DebuggerException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
10: .line 189
StackMap locals:
StackMap stack:
aload 1 /* task */
aload 2
monitorexit
11: areturn
12: .line 178
StackMap locals:
StackMap stack: java.lang.Throwable
aload 2
monitorexit
13: athrow
end local 1 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask task
end local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread;
0 14 1 task Lsun/jvm/hotspot/debugger/linux/LinuxDebuggerLocal$WorkerThreadTask;
Exception table:
from to target type
4 5 6 Class java.lang.InterruptedException
1 11 12 any
12 13 12 any
Exceptions:
throws sun.jvm.hotspot.debugger.DebuggerException
MethodParameters:
Name Flags
task
}
SourceFile: "LinuxDebuggerLocal.java"
NestHost: sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal
InnerClasses:
LinuxDebuggerLocalWorkerThread = sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$LinuxDebuggerLocalWorkerThread of sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal
abstract WorkerThreadTask = sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal$WorkerThreadTask of sun.jvm.hotspot.debugger.linux.LinuxDebuggerLocal