class sun.tools.jconsole.ThreadTab$1 extends javax.swing.SwingWorker<java.lang.Boolean, java.lang.Object>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.tools.jconsole.ThreadTab$1
super_class: javax.swing.SwingWorker
{
private int tlCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int tpCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long ttCount;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long[] threads;
descriptor: [J
flags: (0x0002) ACC_PRIVATE
private long timeStamp;
descriptor: J
flags: (0x0002) ACC_PRIVATE
final sun.tools.jconsole.ThreadTab this$0;
descriptor: Lsun/tools/jconsole/ThreadTab;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final sun.tools.jconsole.ProxyClient val$proxyClient;
descriptor: Lsun/tools/jconsole/ProxyClient;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(sun.tools.jconsole.ThreadTab, sun.tools.jconsole.ProxyClient);
descriptor: (Lsun/tools/jconsole/ThreadTab;Lsun/tools/jconsole/ProxyClient;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 0: aload 0
aload 1
putfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
aload 0
aload 2
putfield sun.tools.jconsole.ThreadTab$1.val$proxyClient:Lsun/tools/jconsole/ProxyClient;
aload 0
invokespecial javax.swing.SwingWorker.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/tools/jconsole/ThreadTab$1;
MethodParameters:
Name Flags
this$0 final
val$proxyClient final
public java.lang.Boolean doInBackground();
descriptor: ()Ljava/lang/Boolean;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=9, args_size=1
start local 0 0: aload 0
getfield sun.tools.jconsole.ThreadTab$1.val$proxyClient:Lsun/tools/jconsole/ProxyClient;
invokevirtual sun.tools.jconsole.ProxyClient.getThreadMXBean:()Ljava/lang/management/ThreadMXBean;
astore 1
start local 1 1: aload 0
aload 1
invokeinterface java.lang.management.ThreadMXBean.getThreadCount:()I
putfield sun.tools.jconsole.ThreadTab$1.tlCount:I
2: aload 0
aload 1
invokeinterface java.lang.management.ThreadMXBean.getPeakThreadCount:()I
putfield sun.tools.jconsole.ThreadTab$1.tpCount:I
3: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.overviewPanel:Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
ifnull 6
4: aload 0
aload 1
invokeinterface java.lang.management.ThreadMXBean.getTotalStartedThreadCount:()J
putfield sun.tools.jconsole.ThreadTab$1.ttCount:J
5: goto 7
6: StackMap locals: java.lang.management.ThreadMXBean
StackMap stack:
aload 0
lconst_0
putfield sun.tools.jconsole.ThreadTab$1.ttCount:J
7: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface java.lang.management.ThreadMXBean.getAllThreadIds:()[J
putfield sun.tools.jconsole.ThreadTab$1.threads:[J
8: aload 0
getfield sun.tools.jconsole.ThreadTab$1.threads:[J
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 17
StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.management.ThreadMXBean top top int int long[]
StackMap stack:
9: aload 6
iload 4
laload
lstore 2
start local 2 10: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.nameCache:Ljava/util/HashMap;
lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 16
11: aload 1
lload 2
invokeinterface java.lang.management.ThreadMXBean.getThreadInfo:(J)Ljava/lang/management/ThreadInfo;
astore 7
start local 7 12: aload 7
ifnull 16
13: aload 7
invokevirtual java.lang.management.ThreadInfo.getThreadName:()Ljava/lang/String;
astore 8
start local 8 14: aload 8
ifnull 16
15: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.nameCache:Ljava/util/HashMap;
lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 8
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 2 16: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
17: iload 4
iload 5
if_icmplt 9
18: aload 0
invokestatic java.lang.System.currentTimeMillis:()J
putfield sun.tools.jconsole.ThreadTab$1.timeStamp:J
19: iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
20: areturn
end local 1 21: StackMap locals: sun.tools.jconsole.ThreadTab$1
StackMap stack: java.io.IOException
pop
22: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
23: StackMap locals:
StackMap stack: java.lang.reflect.UndeclaredThrowableException
pop
24: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/tools/jconsole/ThreadTab$1;
1 21 1 threadMBean Ljava/lang/management/ThreadMXBean;
10 16 2 newThread J
12 16 7 ti Ljava/lang/management/ThreadInfo;
14 16 8 name Ljava/lang/String;
Exception table:
from to target type
0 20 21 Class java.io.IOException
0 20 23 Class java.lang.reflect.UndeclaredThrowableException
protected void done();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=9, locals=17, args_size=1
start local 0 0: aload 0
invokevirtual sun.tools.jconsole.ThreadTab$1.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 8
1: return
2: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
3: return
4: StackMap locals:
StackMap stack: java.util.concurrent.ExecutionException
astore 1
start local 1 5: invokestatic sun.tools.jconsole.JConsole.isDebug:()Z
ifeq 7
6: aload 1
invokevirtual java.util.concurrent.ExecutionException.printStackTrace:()V
7: StackMap locals: java.util.concurrent.ExecutionException
StackMap stack:
return
end local 1 8: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
getfield sun.tools.jconsole.PlotterPanel.plotter:Lsun/tools/jconsole/Plotter;
aload 0
getfield sun.tools.jconsole.ThreadTab$1.timeStamp:J
iconst_2
newarray 11
dup
iconst_0
aload 0
getfield sun.tools.jconsole.ThreadTab$1.tlCount:I
i2l
lastore
dup
iconst_1
aload 0
getfield sun.tools.jconsole.ThreadTab$1.tpCount:I
i2l
lastore
invokevirtual sun.tools.jconsole.Plotter.addValues:(J[J)V
9: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
new java.lang.StringBuilder
dup
aload 0
getfield sun.tools.jconsole.ThreadTab$1.tlCount:I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.tools.jconsole.PlotterPanel.setValueLabel:(Ljava/lang/String;)V
10: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.overviewPanel:Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
ifnull 12
11: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.overviewPanel:Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
aload 0
getfield sun.tools.jconsole.ThreadTab$1.tlCount:I
i2l
aload 0
getfield sun.tools.jconsole.ThreadTab$1.tpCount:I
i2l
aload 0
getfield sun.tools.jconsole.ThreadTab$1.ttCount:J
aload 0
getfield sun.tools.jconsole.ThreadTab$1.timeStamp:J
invokevirtual sun.tools.jconsole.ThreadTab$ThreadOverviewPanel.updateThreadsInfo:(JJJJ)V
12: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.filterTF:Ljavax/swing/JTextField;
invokevirtual javax.swing.JTextField.getText:()Ljava/lang/String;
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 1
start local 1 13: aload 1
invokevirtual java.lang.String.length:()I
ifle 14
iconst_1
goto 15
StackMap locals: java.lang.String
StackMap stack:
14: iconst_0
StackMap locals:
StackMap stack: int
15: istore 2
start local 2 16: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 17: aload 0
getfield sun.tools.jconsole.ThreadTab$1.threads:[J
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 21
StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList top top int int long[]
StackMap stack:
18: aload 8
iload 6
laload
lstore 4
start local 4 19: aload 3
lload 4
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 4 20: iinc 6 1
StackMap locals:
StackMap stack:
21: iload 6
iload 7
if_icmplt 18
22: aload 3
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 4
start local 4 23: goto 29
24: StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 5
start local 5 25: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.nameCache:Ljava/util/HashMap;
lload 5
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 26: iload 2
ifeq 29
aload 7
ifnull 29
27: aload 7
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
aload 1
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
ifge 29
28: aload 4
invokeinterface java.util.Iterator.remove:()V
end local 7 end local 5 29: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
30: aload 0
getfield sun.tools.jconsole.ThreadTab$1.threads:[J
astore 5
start local 5 31: aload 3
invokevirtual java.util.ArrayList.size:()I
aload 0
getfield sun.tools.jconsole.ThreadTab$1.threads:[J
arraylength
if_icmpge 38
32: aload 3
invokevirtual java.util.ArrayList.size:()I
newarray 11
astore 5
33: iconst_0
istore 6
start local 6 34: goto 37
35: StackMap locals: long[] int
StackMap stack:
aload 5
iload 6
aload 3
iload 6
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lastore
36: iinc 6 1
StackMap locals:
StackMap stack:
37: iload 6
aload 5
arraylength
if_icmplt 35
end local 6 38: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.oldThreads:[J
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 53
StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] top top int int long[]
StackMap stack:
39: aload 10
iload 8
laload
lstore 6
start local 6 40: iconst_0
istore 11
start local 11 41: aload 5
dup
astore 16
arraylength
istore 15
iconst_0
istore 14
goto 47
StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] long int int long[] int top top int int long[]
StackMap stack:
42: aload 16
iload 14
laload
lstore 12
start local 12 43: lload 12
lload 6
lcmp
ifne 46
44: iconst_1
istore 11
45: goto 48
end local 12 46: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
47: iload 14
iload 15
if_icmplt 42
48: StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] long int int long[] int
StackMap stack:
iload 11
ifne 52
49: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.listModel:Ljavax/swing/DefaultListModel;
lload 6
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual javax.swing.DefaultListModel.removeElement:(Ljava/lang/Object;)Z
pop
50: iload 2
ifne 52
51: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.nameCache:Ljava/util/HashMap;
lload 6
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 11 end local 6 52: StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] top top int int long[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
53: iload 8
iload 9
if_icmplt 39
54: aload 5
arraylength
iconst_1
isub
istore 6
start local 6 55: goto 68
56: StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] int
StackMap stack:
aload 5
iload 6
laload
lstore 7
start local 7 57: iconst_0
istore 9
start local 9 58: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.oldThreads:[J
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 64
StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] int long int top top int int long[]
StackMap stack:
59: aload 14
iload 12
laload
lstore 10
start local 10 60: lload 7
lload 10
lcmp
ifne 63
61: iconst_1
istore 9
62: goto 65
end local 10 63: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
64: iload 12
iload 13
if_icmplt 59
65: StackMap locals: sun.tools.jconsole.ThreadTab$1 java.lang.String int java.util.ArrayList java.util.Iterator long[] int long int
StackMap stack:
iload 9
ifne 67
66: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
getfield sun.tools.jconsole.ThreadTab.listModel:Ljavax/swing/DefaultListModel;
lload 7
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual javax.swing.DefaultListModel.addElement:(Ljava/lang/Object;)V
end local 9 end local 7 67: StackMap locals:
StackMap stack:
iinc 6 -1
StackMap locals:
StackMap stack:
68: iload 6
ifge 56
end local 6 69: aload 0
getfield sun.tools.jconsole.ThreadTab$1.this$0:Lsun/tools/jconsole/ThreadTab;
aload 5
putfield sun.tools.jconsole.ThreadTab.oldThreads:[J
70: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 71 0 this Lsun/tools/jconsole/ThreadTab$1;
5 8 1 ex Ljava/util/concurrent/ExecutionException;
13 71 1 filter Ljava/lang/String;
16 71 2 doFilter Z
17 71 3 l Ljava/util/ArrayList<Ljava/lang/Long;>;
19 20 4 t J
23 71 4 iterator Ljava/util/Iterator<Ljava/lang/Long;>;
25 29 5 newThread J
26 29 7 name Ljava/lang/String;
31 71 5 newThreads [J
34 38 6 i I
40 52 6 oldThread J
41 52 11 found Z
43 46 12 newThread J
55 69 6 i I
57 67 7 newThread J
58 67 9 found Z
60 63 10 oldThread J
Exception table:
from to target type
0 1 2 Class java.lang.InterruptedException
0 1 4 Class java.util.concurrent.ExecutionException
public java.lang.Object doInBackground();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual sun.tools.jconsole.ThreadTab$1.doInBackground:()Ljava/lang/Boolean;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
}
Signature: Ljavax/swing/SwingWorker<Ljava/lang/Boolean;Ljava/lang/Object;>;
SourceFile: "ThreadTab.java"
EnclosingMethod: sun.tools.jconsole.ThreadTab.newSwingWorker:()Ljavax/swing/SwingWorker;
NestHost: sun.tools.jconsole.ThreadTab
InnerClasses:
sun.tools.jconsole.ThreadTab$1
private ThreadOverviewPanel = sun.tools.jconsole.ThreadTab$ThreadOverviewPanel of sun.tools.jconsole.ThreadTab