public class sun.jvm.hotspot.utilities.soql.JSJavaThread extends sun.jvm.hotspot.utilities.soql.JSJavaInstance
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.soql.JSJavaThread
super_class: sun.jvm.hotspot.utilities.soql.JSJavaInstance
{
private sun.jvm.hotspot.runtime.JavaThread jthread;
descriptor: Lsun/jvm/hotspot/runtime/JavaThread;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.utilities.soql.JSList framesCache;
descriptor: Lsun/jvm/hotspot/utilities/soql/JSList;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.utilities.soql.JSList monitorsCache;
descriptor: Lsun/jvm/hotspot/utilities/soql/JSList;
flags: (0x0002) ACC_PRIVATE
public void <init>(sun.jvm.hotspot.oops.Instance, sun.jvm.hotspot.utilities.soql.JSJavaFactory);
descriptor: (Lsun/jvm/hotspot/oops/Instance;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaInstance.<init>:(Lsun/jvm/hotspot/oops/Instance;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
1: aload 0
aload 1
invokestatic sun.jvm.hotspot.oops.OopUtilities.threadOopGetJavaThread:(Lsun/jvm/hotspot/oops/Oop;)Lsun/jvm/hotspot/runtime/JavaThread;
putfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
0 3 1 threadOop Lsun/jvm/hotspot/oops/Instance;
0 3 2 fac Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
MethodParameters:
Name Flags
threadOop
fac
public void <init>(sun.jvm.hotspot.runtime.JavaThread, sun.jvm.hotspot.utilities.soql.JSJavaFactory);
descriptor: (Lsun/jvm/hotspot/runtime/JavaThread;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual sun.jvm.hotspot.runtime.JavaThread.getThreadObj:()Lsun/jvm/hotspot/oops/Oop;
checkcast sun.jvm.hotspot.oops.Instance
aload 2
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaInstance.<init>:(Lsun/jvm/hotspot/oops/Instance;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
1: aload 0
aload 1
putfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
0 3 1 jt Lsun/jvm/hotspot/runtime/JavaThread;
0 3 2 fac Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
MethodParameters:
Name Flags
jt
fac
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaThread.getName:()Ljava/lang/String;
astore 1
start local 1 1: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 2
start local 2 2: aload 2
ldc "Thread (address="
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
3: aload 2
aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaThread.getOop:()Lsun/jvm/hotspot/oops/Oop;
invokevirtual sun.jvm.hotspot.oops.Oop.getHandle:()Lsun/jvm/hotspot/debugger/OopHandle;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
pop
4: aload 2
ldc ", name="
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
5: aload 1
ifnull 8
6: aload 2
aload 1
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
7: goto 9
8: StackMap locals: java.lang.String java.lang.StringBuffer
StackMap stack:
aload 2
ldc "<unnamed>"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
9: StackMap locals:
StackMap stack:
aload 2
bipush 41
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
10: aload 2
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
1 11 1 name Ljava/lang/String;
2 11 2 buf Ljava/lang/StringBuffer;
protected java.lang.Object getFieldValue(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "name"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaThread.getName:()Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc "frames"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaThread.getFrames:()Lsun/jvm/hotspot/utilities/soql/JSList;
areturn
4: StackMap locals:
StackMap stack:
aload 1
ldc "monitors"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaThread.getOwnedMonitors:()Lsun/jvm/hotspot/utilities/soql/JSList;
areturn
6: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaInstance.getFieldValue:(Ljava/lang/String;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
0 7 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
protected java.lang.String[] getFieldNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaInstance.getFieldNames:()[Ljava/lang/String;
astore 1
start local 1 1: aload 1
arraylength
iconst_2
iadd
anewarray java.lang.String
astore 2
start local 2 2: aload 1
iconst_0
aload 2
iconst_0
aload 1
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: aload 2
aload 1
arraylength
ldc "frames"
aastore
4: aload 2
aload 1
arraylength
iconst_1
iadd
ldc "monitors"
aastore
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
1 6 1 flds [Ljava/lang/String;
2 6 2 res [Ljava/lang/String;
protected boolean hasField(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "frames"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 1
aload 1
ldc "monitors"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaInstance.hasField:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
private java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaThread.getOop:()Lsun/jvm/hotspot/oops/Oop;
invokestatic sun.jvm.hotspot.oops.OopUtilities.threadOopGetName:(Lsun/jvm/hotspot/oops/Oop;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
private synchronized sun.jvm.hotspot.utilities.soql.JSList getFrames();
descriptor: ()Lsun/jvm/hotspot/utilities/soql/JSList;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.framesCache:Lsun/jvm/hotspot/utilities/soql/JSList;
ifnonnull 9
1: new java.util.ArrayList
dup
iconst_0
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
start local 1 2: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
ifnull 8
3: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
invokevirtual sun.jvm.hotspot.runtime.JavaThread.getLastJavaVFrameDbg:()Lsun/jvm/hotspot/runtime/JavaVFrame;
astore 2
start local 2 4: goto 7
5: StackMap locals: java.util.List sun.jvm.hotspot.runtime.JavaVFrame
StackMap stack:
aload 1
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 2
invokevirtual sun.jvm.hotspot.runtime.JavaVFrame.javaSender:()Lsun/jvm/hotspot/runtime/JavaVFrame;
astore 2
7: StackMap locals:
StackMap stack:
aload 2
ifnonnull 5
end local 2 8: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.factory:Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
aload 1
invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSList:(Ljava/util/List;)Lsun/jvm/hotspot/utilities/soql/JSList;
putfield sun.jvm.hotspot.utilities.soql.JSJavaThread.framesCache:Lsun/jvm/hotspot/utilities/soql/JSList;
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.framesCache:Lsun/jvm/hotspot/utilities/soql/JSList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
2 9 1 list Ljava/util/List;
4 8 2 jvf Lsun/jvm/hotspot/runtime/JavaVFrame;
private synchronized sun.jvm.hotspot.utilities.soql.JSList getOwnedMonitors();
descriptor: ()Lsun/jvm/hotspot/utilities/soql/JSList;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=14, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.monitorsCache:Lsun/jvm/hotspot/utilities/soql/JSList;
ifnonnull 46
1: new java.util.ArrayList
dup
iconst_0
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
start local 1 2: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
ifnull 45
3: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 4: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
invokevirtual sun.jvm.hotspot.runtime.JavaThread.getCurrentWaitingMonitor:()Lsun/jvm/hotspot/runtime/ObjectMonitor;
astore 3
start local 3 5: aconst_null
astore 4
start local 4 6: aload 3
ifnull 8
7: aload 3
invokevirtual sun.jvm.hotspot.runtime.ObjectMonitor.object:()Lsun/jvm/hotspot/debugger/OopHandle;
astore 4
8: StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaThread java.util.List java.util.List sun.jvm.hotspot.runtime.ObjectMonitor sun.jvm.hotspot.debugger.OopHandle
StackMap stack:
aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
invokevirtual sun.jvm.hotspot.runtime.JavaThread.getCurrentPendingMonitor:()Lsun/jvm/hotspot/runtime/ObjectMonitor;
astore 5
start local 5 9: aconst_null
astore 6
start local 6 10: aload 5
ifnull 12
11: aload 5
invokevirtual sun.jvm.hotspot.runtime.ObjectMonitor.object:()Lsun/jvm/hotspot/debugger/OopHandle;
astore 6
12: StackMap locals: sun.jvm.hotspot.runtime.ObjectMonitor sun.jvm.hotspot.debugger.OopHandle
StackMap stack:
aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.jthread:Lsun/jvm/hotspot/runtime/JavaThread;
invokevirtual sun.jvm.hotspot.runtime.JavaThread.getLastJavaVFrameDbg:()Lsun/jvm/hotspot/runtime/JavaVFrame;
astore 7
start local 7 13: goto 39
14: StackMap locals: sun.jvm.hotspot.runtime.JavaVFrame
StackMap stack:
aload 7
invokevirtual sun.jvm.hotspot.runtime.JavaVFrame.getMonitors:()Ljava/util/List;
astore 8
start local 8 15: aload 8
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
start local 9 16: goto 37
17: StackMap locals: java.util.List java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.jvm.hotspot.runtime.MonitorInfo
astore 10
start local 10 18: aload 10
invokevirtual sun.jvm.hotspot.runtime.MonitorInfo.eliminated:()Z
ifeq 20
aload 7
invokevirtual sun.jvm.hotspot.runtime.JavaVFrame.isCompiledFrame:()Z
ifeq 20
19: goto 37
20: StackMap locals: sun.jvm.hotspot.runtime.MonitorInfo
StackMap stack:
aload 10
invokevirtual sun.jvm.hotspot.runtime.MonitorInfo.owner:()Lsun/jvm/hotspot/debugger/OopHandle;
astore 11
start local 11 21: aload 11
ifnonnull 23
22: goto 37
23: StackMap locals: sun.jvm.hotspot.debugger.OopHandle
StackMap stack:
aload 11
aload 4
invokeinterface sun.jvm.hotspot.debugger.OopHandle.equals:(Ljava/lang/Object;)Z
ifeq 25
24: goto 37
25: StackMap locals:
StackMap stack:
aload 11
aload 6
invokeinterface sun.jvm.hotspot.debugger.OopHandle.equals:(Ljava/lang/Object;)Z
ifeq 27
26: goto 37
27: StackMap locals:
StackMap stack:
iconst_0
istore 12
start local 12 28: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
start local 13 29: goto 33
30: StackMap locals: int java.util.Iterator
StackMap stack:
aload 11
aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
invokeinterface sun.jvm.hotspot.debugger.OopHandle.equals:(Ljava/lang/Object;)Z
ifeq 33
31: iconst_1
istore 12
32: goto 34
33: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 30
end local 13 34: StackMap locals:
StackMap stack:
iload 12
ifeq 36
35: goto 37
36: StackMap locals:
StackMap stack:
aload 2
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 11 end local 10 37: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
end local 9 38: aload 7
invokevirtual sun.jvm.hotspot.runtime.JavaVFrame.javaSender:()Lsun/jvm/hotspot/runtime/JavaVFrame;
astore 7
end local 8 39: StackMap locals:
StackMap stack:
aload 7
ifnonnull 14
40: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getObjectHeap:()Lsun/jvm/hotspot/oops/ObjectHeap;
astore 8
start local 8 41: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
start local 9 42: goto 44
43: StackMap locals: sun.jvm.hotspot.oops.ObjectHeap java.util.Iterator
StackMap stack:
aload 1
aload 8
aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.jvm.hotspot.debugger.OopHandle
invokevirtual sun.jvm.hotspot.oops.ObjectHeap.newOop:(Lsun/jvm/hotspot/debugger/OopHandle;)Lsun/jvm/hotspot/oops/Oop;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
44: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 43
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 45: StackMap locals: sun.jvm.hotspot.utilities.soql.JSJavaThread java.util.List
StackMap stack:
aload 0
aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.factory:Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
aload 1
invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSList:(Ljava/util/List;)Lsun/jvm/hotspot/utilities/soql/JSList;
putfield sun.jvm.hotspot.utilities.soql.JSJavaThread.monitorsCache:Lsun/jvm/hotspot/utilities/soql/JSList;
end local 1 46: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaThread.monitorsCache:Lsun/jvm/hotspot/utilities/soql/JSList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaThread;
2 46 1 ownedMonitors Ljava/util/List;
4 45 2 lockedObjects Ljava/util/List;
5 45 3 waitingMonitor Lsun/jvm/hotspot/runtime/ObjectMonitor;
6 45 4 waitingObj Lsun/jvm/hotspot/debugger/OopHandle;
9 45 5 pendingMonitor Lsun/jvm/hotspot/runtime/ObjectMonitor;
10 45 6 pendingObj Lsun/jvm/hotspot/debugger/OopHandle;
13 45 7 frame Lsun/jvm/hotspot/runtime/JavaVFrame;
15 39 8 frameMonitors Ljava/util/List;
16 38 9 miItr Ljava/util/Iterator;
18 37 10 mi Lsun/jvm/hotspot/runtime/MonitorInfo;
21 37 11 obj Lsun/jvm/hotspot/debugger/OopHandle;
28 37 12 found Z
29 34 13 loItr Ljava/util/Iterator;
41 45 8 heap Lsun/jvm/hotspot/oops/ObjectHeap;
42 45 9 loItr Ljava/util/Iterator;
}
SourceFile: "JSJavaThread.java"