public class sun.jvm.hotspot.tools.JStack extends sun.jvm.hotspot.tools.Tool
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.tools.JStack
super_class: sun.jvm.hotspot.tools.Tool
{
private boolean mixedMode;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean concurrentLocks;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(boolean, boolean);
descriptor: (ZZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial sun.jvm.hotspot.tools.Tool.<init>:()V
1: aload 0
iload 1
putfield sun.jvm.hotspot.tools.JStack.mixedMode:Z
2: aload 0
iload 2
putfield sun.jvm.hotspot.tools.JStack.concurrentLocks:Z
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/tools/JStack;
0 4 1 mixedMode Z
0 4 2 concurrentLocks Z
MethodParameters:
Name Flags
mixedMode
concurrentLocks
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
iconst_1
invokespecial sun.jvm.hotspot.tools.JStack.<init>:(ZZ)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/JStack;
public void <init>(sun.jvm.hotspot.debugger.JVMDebugger);
descriptor: (Lsun/jvm/hotspot/debugger/JVMDebugger;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.jvm.hotspot.tools.Tool.<init>:(Lsun/jvm/hotspot/debugger/JVMDebugger;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/JStack;
0 2 1 d Lsun/jvm/hotspot/debugger/JVMDebugger;
MethodParameters:
Name Flags
d
protected boolean needsJavaPrefix();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/tools/JStack;
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "jstack"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/tools/JStack;
protected void printFlagsUsage();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc " -l\tto print java.util.concurrent locks"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc " -m\tto print both java and native frames (mixed mode)"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: aload 0
invokespecial sun.jvm.hotspot.tools.Tool.printFlagsUsage:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/tools/JStack;
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
getfield sun.jvm.hotspot.tools.JStack.mixedMode:Z
ifeq 4
2: new sun.jvm.hotspot.tools.PStack
dup
iconst_0
aload 0
getfield sun.jvm.hotspot.tools.JStack.concurrentLocks:Z
invokespecial sun.jvm.hotspot.tools.PStack.<init>:(ZZ)V
astore 1
3: goto 5
4: StackMap locals: sun.jvm.hotspot.tools.Tool
StackMap stack:
new sun.jvm.hotspot.tools.StackTrace
dup
iconst_0
aload 0
getfield sun.jvm.hotspot.tools.JStack.concurrentLocks:Z
invokespecial sun.jvm.hotspot.tools.StackTrace.<init>:(ZZ)V
astore 1
5: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual sun.jvm.hotspot.tools.JStack.getAgent:()Lsun/jvm/hotspot/HotSpotAgent;
invokevirtual sun.jvm.hotspot.tools.Tool.setAgent:(Lsun/jvm/hotspot/HotSpotAgent;)V
6: aload 1
aload 0
invokevirtual sun.jvm.hotspot.tools.JStack.getDebugeeType:()I
invokevirtual sun.jvm.hotspot.tools.Tool.setDebugeeType:(I)V
7: aload 1
invokevirtual sun.jvm.hotspot.tools.Tool.run:()V
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/tools/JStack;
1 9 1 tool Lsun/jvm/hotspot/tools/Tool;
public void runWithArgs(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 11
3: StackMap locals: int int
StackMap stack:
aload 1
iload 3
aaload
ldc "-m"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
4: aload 0
iconst_1
putfield sun.jvm.hotspot.tools.JStack.mixedMode:Z
5: iinc 2 1
6: goto 10
StackMap locals:
StackMap stack:
7: aload 1
iload 3
aaload
ldc "-l"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
8: aload 0
iconst_1
putfield sun.jvm.hotspot.tools.JStack.concurrentLocks:Z
9: iinc 2 1
10: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
aload 1
arraylength
if_icmplt 3
end local 3 12: iload 2
ifeq 20
13: aload 1
arraylength
iload 2
isub
anewarray java.lang.String
astore 3
start local 3 14: iconst_0
istore 4
start local 4 15: goto 18
16: StackMap locals: sun.jvm.hotspot.tools.JStack java.lang.String[] int java.lang.String[] int
StackMap stack:
aload 3
iload 4
aload 1
iload 4
iload 2
iadd
aaload
aastore
17: iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
aload 3
arraylength
if_icmplt 16
end local 4 19: aload 3
astore 1
end local 3 20: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.jvm.hotspot.tools.JStack.execute:([Ljava/lang/String;)V
21: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lsun/jvm/hotspot/tools/JStack;
0 22 1 args [Ljava/lang/String;
1 22 2 used I
2 12 3 i I
14 20 3 newArgs [Ljava/lang/String;
15 19 4 i I
MethodParameters:
Name Flags
args
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new sun.jvm.hotspot.tools.JStack
dup
invokespecial sun.jvm.hotspot.tools.JStack.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
invokevirtual sun.jvm.hotspot.tools.JStack.runWithArgs:([Ljava/lang/String;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 args [Ljava/lang/String;
1 3 1 jstack Lsun/jvm/hotspot/tools/JStack;
MethodParameters:
Name Flags
args
}
SourceFile: "JStack.java"