public class org.eclipse.jetty.util.thread.QueuedThreadPool extends org.eclipse.jetty.util.component.ContainerLifeCycle implements java.util.concurrent.ThreadFactory, org.eclipse.jetty.util.thread.ThreadPool$SizedThreadPool, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.thread.TryExecutor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jetty.util.thread.QueuedThreadPool
super_class: org.eclipse.jetty.util.component.ContainerLifeCycle
{
private static final org.slf4j.Logger LOG;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static java.lang.Runnable NOOP;
descriptor: Ljava/lang/Runnable;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final org.eclipse.jetty.util.AtomicBiInteger _counts;
descriptor: Lorg/eclipse/jetty/util/AtomicBiInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicLong _lastShrink;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Set<java.lang.Thread> _threads;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/Thread;>;
private final org.eclipse.jetty.util.thread.AutoLock$WithCondition _joinLock;
descriptor: Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.BlockingQueue<java.lang.Runnable> _jobs;
descriptor: Ljava/util/concurrent/BlockingQueue;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
private final java.lang.ThreadGroup _threadGroup;
descriptor: Ljava/lang/ThreadGroup;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.ThreadFactory _threadFactory;
descriptor: Ljava/util/concurrent/ThreadFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.lang.String _name;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private int _idleTimeout;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int _maxThreads;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int _minThreads;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int _reservedThreads;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jetty.util.thread.TryExecutor _tryExecutor;
descriptor: Lorg/eclipse/jetty/util/thread/TryExecutor;
flags: (0x0002) ACC_PRIVATE
private int _priority;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean _daemon;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean _detailedDump;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int _lowThreadsThreshold;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jetty.util.thread.ThreadPoolBudget _budget;
descriptor: Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
flags: (0x0002) ACC_PRIVATE
private long _stopTimeout;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private final java.lang.Runnable _runnable;
descriptor: Ljava/lang/Runnable;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
1: invokedynamic run()Ljava/lang/Runnable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()V
org/eclipse/jetty/util/thread/QueuedThreadPool.lambda$0()V (6)
()V
putstatic org.eclipse.jetty.util.thread.QueuedThreadPool.NOOP:Ljava/lang/Runnable;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
sipush 200
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(I)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
bipush 8
iload 1
invokestatic java.lang.Math.min:(II)I
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(II)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
MethodParameters:
Name Flags
maxThreads
public void <init>(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iload 2
ldc 60000
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(III)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
0 2 2 minThreads I
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
MethodParameters:
Name Flags
maxThreads
minThreads
public void <init>(int, int, java.util.concurrent.BlockingQueue<java.lang.Runnable>);
descriptor: (IILjava/util/concurrent/BlockingQueue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
ldc 60000
iconst_m1
aload 3
aconst_null
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(IIIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
0 2 2 minThreads I
0 2 3 queue Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
Signature: (IILjava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;)V
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
2:
org.eclipse.jetty.util.annotation.Name(value = "queue")
MethodParameters:
Name Flags
maxThreads
minThreads
queue
public void <init>(int, int, int);
descriptor: (III)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
iload 3
aconst_null
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(IIILjava/util/concurrent/BlockingQueue;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
0 2 2 minThreads I
0 2 3 idleTimeout I
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
2:
org.eclipse.jetty.util.annotation.Name(value = "idleTimeout")
MethodParameters:
Name Flags
maxThreads
minThreads
idleTimeout
public void <init>(int, int, int, java.util.concurrent.BlockingQueue<java.lang.Runnable>);
descriptor: (IIILjava/util/concurrent/BlockingQueue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iload 2
iload 3
aload 4
aconst_null
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(IIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
0 2 2 minThreads I
0 2 3 idleTimeout I
0 2 4 queue Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
Signature: (IIILjava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;)V
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
2:
org.eclipse.jetty.util.annotation.Name(value = "idleTimeout")
3:
org.eclipse.jetty.util.annotation.Name(value = "queue")
MethodParameters:
Name Flags
maxThreads
minThreads
idleTimeout
queue
public void <init>(int, int, int, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.lang.ThreadGroup);
descriptor: (IIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
iload 1
iload 2
iload 3
iconst_m1
aload 4
aload 5
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(IIIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;)V
1: 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 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
0 2 2 minThreads I
0 2 3 idleTimeout I
0 2 4 queue Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
0 2 5 threadGroup Ljava/lang/ThreadGroup;
Signature: (IIILjava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;Ljava/lang/ThreadGroup;)V
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
2:
org.eclipse.jetty.util.annotation.Name(value = "idleTimeout")
3:
org.eclipse.jetty.util.annotation.Name(value = "queue")
4:
org.eclipse.jetty.util.annotation.Name(value = "threadGroup")
MethodParameters:
Name Flags
maxThreads
minThreads
idleTimeout
queue
threadGroup
public void <init>(int, int, int, int, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.lang.ThreadGroup);
descriptor: (IIIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
iload 1
iload 2
iload 3
iload 4
aload 5
aload 6
aconst_null
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool.<init>:(IIIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;Ljava/util/concurrent/ThreadFactory;)V
1: return
end local 6 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 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 maxThreads I
0 2 2 minThreads I
0 2 3 idleTimeout I
0 2 4 reservedThreads I
0 2 5 queue Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
0 2 6 threadGroup Ljava/lang/ThreadGroup;
Signature: (IIIILjava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;Ljava/lang/ThreadGroup;)V
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
2:
org.eclipse.jetty.util.annotation.Name(value = "idleTimeout")
3:
org.eclipse.jetty.util.annotation.Name(value = "reservedThreads")
4:
org.eclipse.jetty.util.annotation.Name(value = "queue")
5:
org.eclipse.jetty.util.annotation.Name(value = "threadGroup")
MethodParameters:
Name Flags
maxThreads
minThreads
idleTimeout
reservedThreads
queue
threadGroup
public void <init>(int, int, int, int, java.util.concurrent.BlockingQueue<java.lang.Runnable>, java.lang.ThreadGroup, java.util.concurrent.ThreadFactory);
descriptor: (IIIILjava/util/concurrent/BlockingQueue;Ljava/lang/ThreadGroup;Ljava/util/concurrent/ThreadFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.<init>:()V
1: aload 0
new org.eclipse.jetty.util.AtomicBiInteger
dup
ldc -2147483648
iconst_0
invokespecial org.eclipse.jetty.util.AtomicBiInteger.<init>:(II)V
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
2: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._lastShrink:Ljava/util/concurrent/atomic/AtomicLong;
3: aload 0
invokestatic java.util.concurrent.ConcurrentHashMap.newKeySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
4: aload 0
new org.eclipse.jetty.util.thread.AutoLock$WithCondition
dup
invokespecial org.eclipse.jetty.util.thread.AutoLock$WithCondition.<init>:()V
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._joinLock:Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
5: aload 0
new java.lang.StringBuilder
dup
ldc "qtp"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Object.hashCode:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._name:Ljava/lang/String;
6: aload 0
iconst_m1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._reservedThreads:I
7: aload 0
getstatic org.eclipse.jetty.util.thread.TryExecutor.NO_TRY:Lorg/eclipse/jetty/util/thread/TryExecutor;
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
8: aload 0
iconst_5
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._priority:I
9: aload 0
iconst_0
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._daemon:Z
10: aload 0
iconst_0
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._detailedDump:Z
11: aload 0
iconst_1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._lowThreadsThreshold:I
12: aload 0
new org.eclipse.jetty.util.thread.QueuedThreadPool$Runner
dup
aload 0
invokespecial org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.<init>:(Lorg/eclipse/jetty/util/thread/QueuedThreadPool;)V
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._runnable:Ljava/lang/Runnable;
13: iload 1
iload 2
if_icmpge 15
14: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "max threads ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") less than min threads ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int int int int java.util.concurrent.BlockingQueue java.lang.ThreadGroup java.util.concurrent.ThreadFactory
StackMap stack:
aload 0
iload 2
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.setMinThreads:(I)V
16: aload 0
iload 1
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.setMaxThreads:(I)V
17: aload 0
iload 3
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.setIdleTimeout:(I)V
18: aload 0
ldc 5000
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.setStopTimeout:(J)V
19: aload 0
iload 4
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.setReservedThreads:(I)V
20: aload 5
ifnonnull 23
21: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
bipush 8
invokestatic java.lang.Math.max:(II)I
sipush 1024
imul
istore 8
start local 8 22: new org.eclipse.jetty.util.BlockingArrayQueue
dup
iload 8
iload 8
invokespecial org.eclipse.jetty.util.BlockingArrayQueue.<init>:(II)V
astore 5
end local 8 23: StackMap locals:
StackMap stack:
aload 0
aload 5
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._jobs:Ljava/util/concurrent/BlockingQueue;
24: aload 0
aload 6
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._threadGroup:Ljava/lang/ThreadGroup;
25: aload 0
new org.eclipse.jetty.util.thread.ThreadPoolBudget
dup
aload 0
invokespecial org.eclipse.jetty.util.thread.ThreadPoolBudget.<init>:(Lorg/eclipse/jetty/util/thread/ThreadPool$SizedThreadPool;)V
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.setThreadPoolBudget:(Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;)V
26: aload 0
aload 7
ifnonnull 27
aload 0
goto 28
StackMap locals:
StackMap stack: org.eclipse.jetty.util.thread.QueuedThreadPool
27: aload 7
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int int int int java.util.concurrent.BlockingQueue java.lang.ThreadGroup java.util.concurrent.ThreadFactory
StackMap stack: org.eclipse.jetty.util.thread.QueuedThreadPool java.util.concurrent.ThreadFactory
28: putfield org.eclipse.jetty.util.thread.QueuedThreadPool._threadFactory:Ljava/util/concurrent/ThreadFactory;
29: return
end local 7 end local 6 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 30 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 30 1 maxThreads I
0 30 2 minThreads I
0 30 3 idleTimeout I
0 30 4 reservedThreads I
0 30 5 queue Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
0 30 6 threadGroup Ljava/lang/ThreadGroup;
0 30 7 threadFactory Ljava/util/concurrent/ThreadFactory;
22 23 8 capacity I
Signature: (IIIILjava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;Ljava/lang/ThreadGroup;Ljava/util/concurrent/ThreadFactory;)V
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "maxThreads")
1:
org.eclipse.jetty.util.annotation.Name(value = "minThreads")
2:
org.eclipse.jetty.util.annotation.Name(value = "idleTimeout")
3:
org.eclipse.jetty.util.annotation.Name(value = "reservedThreads")
4:
org.eclipse.jetty.util.annotation.Name(value = "queue")
5:
org.eclipse.jetty.util.annotation.Name(value = "threadGroup")
6:
org.eclipse.jetty.util.annotation.Name(value = "threadFactory")
MethodParameters:
Name Flags
maxThreads
minThreads
idleTimeout
reservedThreads
queue
threadGroup
threadFactory
public org.eclipse.jetty.util.thread.ThreadPoolBudget getThreadPoolBudget();
descriptor: ()Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._budget:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
public void setThreadPoolBudget(org.eclipse.jetty.util.thread.ThreadPoolBudget);
descriptor: (Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
aload 1
invokevirtual org.eclipse.jetty.util.thread.ThreadPoolBudget.getSizedThreadPool:()Lorg/eclipse/jetty/util/thread/ThreadPool$SizedThreadPool;
aload 0
if_acmpeq 2
1: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._budget:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 4 1 budget Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
MethodParameters:
Name Flags
budget
public void setStopTimeout(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._stopTimeout:J
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 stopTimeout J
MethodParameters:
Name Flags
stopTimeout
public long getStopTimeout();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._stopTimeout:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
protected void doStart();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._reservedThreads:I
ifne 3
1: aload 0
getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.NO_TRY:Lorg/eclipse/jetty/util/thread/TryExecutor;
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
2: goto 6
3: StackMap locals:
StackMap stack:
new org.eclipse.jetty.util.thread.ReservedThreadExecutor
dup
aload 0
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._reservedThreads:I
invokespecial org.eclipse.jetty.util.thread.ReservedThreadExecutor.<init>:(Ljava/util/concurrent/Executor;I)V
astore 1
start local 1 4: aload 1
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._idleTimeout:I
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual org.eclipse.jetty.util.thread.ReservedThreadExecutor.setIdleTimeout:(JLjava/util/concurrent/TimeUnit;)V
5: aload 0
aload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
end local 1 6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.addBean:(Ljava/lang/Object;)Z
pop
7: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._lastShrink:Ljava/util/concurrent/atomic/AtomicLong;
invokestatic java.lang.System.nanoTime:()J
invokevirtual java.util.concurrent.atomic.AtomicLong.set:(J)V
8: aload 0
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.doStart:()V
9: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
iconst_0
iconst_0
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.set:(II)V
10: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.ensureThreads:()V
11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
4 6 1 reserved Lorg/eclipse/jetty/util/thread/ReservedThreadExecutor;
Exceptions:
throws java.lang.Exception
protected void doStop();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=12, args_size=1
start local 0 0: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 2
1: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Stopping {}"
aload 0
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 0
invokespecial org.eclipse.jetty.util.component.ContainerLifeCycle.doStop:()V
3: aload 0
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.removeBean:(Ljava/lang/Object;)Z
pop
4: aload 0
getstatic org.eclipse.jetty.util.thread.TryExecutor.NO_TRY:Lorg/eclipse/jetty/util/thread/TryExecutor;
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
5: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
ldc -2147483648
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.getAndSetHi:(I)I
istore 1
start local 1 6: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getStopTimeout:()J
lstore 2
start local 2 7: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getQueue:()Ljava/util/concurrent/BlockingQueue;
astore 4
start local 4 8: lload 2
lconst_0
lcmp
ifle 49
9: iconst_0
istore 5
start local 5 10: goto 13
11: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue int
StackMap stack:
aload 4
getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.NOOP:Ljava/lang/Runnable;
invokeinterface java.util.concurrent.BlockingQueue.offer:(Ljava/lang/Object;)Z
pop
12: iinc 5 1
StackMap locals:
StackMap stack:
13: iload 5
iload 1
if_icmplt 11
end local 5 14: aload 0
invokestatic java.lang.System.nanoTime:()J
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
lload 2
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
ldc 2
ldiv
ladd
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.joinThreads:(J)V
15: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 20
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue top java.util.Iterator
StackMap stack:
16: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 5
start local 5 17: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 19
18: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Interrupting {}"
aload 5
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
19: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue java.lang.Thread java.util.Iterator
StackMap stack:
aload 5
invokevirtual java.lang.Thread.interrupt:()V
end local 5 20: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
21: aload 0
invokestatic java.lang.System.nanoTime:()J
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
lload 2
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
ldc 2
ldiv
ladd
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.joinThreads:(J)V
22: invokestatic java.lang.Thread.yield:()V
23: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 35
24: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 33
StackMap locals:
StackMap stack:
25: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 5
start local 5 26: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 7
start local 7 27: aload 5
invokevirtual java.lang.Thread.getStackTrace:()[Ljava/lang/StackTraceElement;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 31
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue java.lang.Thread java.util.Iterator java.lang.StringBuilder top int int java.lang.StackTraceElement[]
StackMap stack:
28: aload 11
iload 9
aaload
astore 8
start local 8 29: aload 7
invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\tat "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
end local 8 30: iinc 9 1
StackMap locals:
StackMap stack:
31: iload 9
iload 10
if_icmplt 28
32: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Couldn't stop {}{}"
aload 5
aload 7
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 end local 5 33: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
34: goto 49
35: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 38
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue top java.util.Iterator
StackMap stack:
36: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 5
start local 5 37: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "{} Couldn't stop {}"
aload 0
aload 5
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 5 38: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
39: goto 49
40: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._jobs:Ljava/util/concurrent/BlockingQueue;
invokeinterface java.util.concurrent.BlockingQueue.poll:()Ljava/lang/Object;
checkcast java.lang.Runnable
astore 5
start local 5 41: aload 5
instanceof java.io.Closeable
ifeq 47
42: aload 5
checkcast java.io.Closeable
invokeinterface java.io.Closeable.close:()V
43: goto 49
44: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue java.lang.Runnable
StackMap stack: java.lang.Throwable
astore 6
start local 6 45: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Unable to close job: {}"
aload 5
aload 6
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 6 46: goto 49
47: StackMap locals:
StackMap stack:
aload 5
getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.NOOP:Ljava/lang/Runnable;
if_acmpeq 49
48: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Stopped without executing or closing {}"
aload 5
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;)V
end local 5 49: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._jobs:Ljava/util/concurrent/BlockingQueue;
invokeinterface java.util.concurrent.BlockingQueue.isEmpty:()Z
ifeq 40
50: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._budget:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
ifnull 52
51: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._budget:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
invokevirtual org.eclipse.jetty.util.thread.ThreadPoolBudget.reset:()V
52: StackMap locals:
StackMap stack:
aconst_null
astore 5
aconst_null
astore 6
53: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._joinLock:Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.lock:()Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
astore 7
start local 7 54: aload 7
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.signalAll:()V
55: aload 7
ifnull 61
aload 7
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.close:()V
goto 61
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int long java.util.concurrent.BlockingQueue java.lang.Throwable java.lang.Throwable org.eclipse.jetty.util.thread.AutoLock$WithCondition
StackMap stack: java.lang.Throwable
56: astore 5
aload 7
ifnull 57
aload 7
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.close:()V
end local 7 StackMap locals:
StackMap stack:
57: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
58: astore 6
aload 5
ifnonnull 59
aload 6
astore 5
goto 60
StackMap locals:
StackMap stack:
59: aload 5
aload 6
if_acmpeq 60
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
60: aload 5
athrow
61: StackMap locals:
StackMap stack:
return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 62 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
6 62 1 threads I
7 62 2 timeout J
8 62 4 jobs Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
10 14 5 i I
17 20 5 thread Ljava/lang/Thread;
26 33 5 unstopped Ljava/lang/Thread;
27 33 7 dmp Ljava/lang/StringBuilder;
29 30 8 element Ljava/lang/StackTraceElement;
37 38 5 unstopped Ljava/lang/Thread;
41 49 5 job Ljava/lang/Runnable;
45 46 6 t Ljava/lang/Throwable;
54 57 7 l Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
Exception table:
from to target type
42 43 44 Class java.lang.Throwable
54 55 56 any
53 58 58 any
Exceptions:
throws java.lang.Exception
private void joinThreads(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 3
start local 3 2: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
lload 1
invokestatic java.lang.System.nanoTime:()J
lsub
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
lstore 5
start local 5 3: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 5
4: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Waiting for {} for {}"
aload 3
lload 5
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
5: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long java.lang.Thread java.util.Iterator long
StackMap stack:
lload 5
lconst_0
lcmp
ifle 7
6: aload 3
lload 5
invokevirtual java.lang.Thread.join:(J)V
end local 5 end local 3 7: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 9 1 stopByNanos J
2 7 3 thread Ljava/lang/Thread;
3 7 5 canWait J
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
stopByNanos
public void setDaemon(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._daemon:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 daemon Z
MethodParameters:
Name Flags
daemon
public void setIdleTimeout(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._idleTimeout:I
1: aload 0
ldc Lorg/eclipse/jetty/util/thread/ReservedThreadExecutor;
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getBean:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.eclipse.jetty.util.thread.ReservedThreadExecutor
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 2
iload 1
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual org.eclipse.jetty.util.thread.ReservedThreadExecutor.setIdleTimeout:(JLjava/util/concurrent/TimeUnit;)V
4: StackMap locals: org.eclipse.jetty.util.thread.ReservedThreadExecutor
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 5 1 idleTimeout I
2 5 2 reserved Lorg/eclipse/jetty/util/thread/ReservedThreadExecutor;
MethodParameters:
Name Flags
idleTimeout
public void setMaxThreads(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._budget:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
ifnull 2
1: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._budget:Lorg/eclipse/jetty/util/thread/ThreadPoolBudget;
iload 1
invokevirtual org.eclipse.jetty.util.thread.ThreadPoolBudget.check:(I)Z
pop
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
3: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
if_icmple 5
4: aload 0
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 6 1 maxThreads I
MethodParameters:
Name Flags
maxThreads
public void setMinThreads(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
1: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
if_icmple 3
2: aload 0
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isStarted:()Z
ifeq 5
4: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.ensureThreads:()V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 6 1 minThreads I
MethodParameters:
Name Flags
minThreads
public void setReservedThreads(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isRunning:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getState:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._reservedThreads:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 4 1 reservedThreads I
MethodParameters:
Name Flags
reservedThreads
public void setName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isRunning:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "started"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._name:Ljava/lang/String;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 4 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void setThreadsPriority(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._priority:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 priority I
MethodParameters:
Name Flags
priority
public int getIdleTimeout();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._idleTimeout:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "maximum time a thread may be idle in ms")
public int getMaxThreads();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "maximum number of threads in the pool")
public int getMinThreads();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "minimum number of threads in the pool")
public int getReservedThreads();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isStarted:()Z
ifeq 4
1: aload 0
ldc Lorg/eclipse/jetty/util/thread/ReservedThreadExecutor;
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getBean:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.eclipse.jetty.util.thread.ReservedThreadExecutor
astore 1
start local 1 2: aload 1
ifnull 4
3: aload 1
invokevirtual org.eclipse.jetty.util.thread.ReservedThreadExecutor.getCapacity:()I
ireturn
end local 1 4: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._reservedThreads:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
2 4 1 reservedThreadExecutor Lorg/eclipse/jetty/util/thread/ReservedThreadExecutor;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "the number of reserved threads in the pool")
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: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "name of the thread pool")
public int getThreadsPriority();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._priority:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "priority of threads in the pool")
public int getQueueSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.getLo:()I
istore 1
start local 1 1: iconst_0
iload 1
ineg
invokestatic java.lang.Math.max:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
1 2 1 idle I
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "size of the job queue")
public boolean isDaemon();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._daemon:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "thread pool uses daemon threads")
public boolean isDetailedDump();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._detailedDump:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "reports additional details in the dump")
public void setDetailedDump(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._detailedDump:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 detailedDump Z
MethodParameters:
Name Flags
detailedDump
public int getLowThreadsThreshold();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._lowThreadsThreshold:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "threshold at which the pool is low on threads")
public void setLowThreadsThreshold(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.eclipse.jetty.util.thread.QueuedThreadPool._lowThreadsThreshold:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 lowThreadsThreshold I
MethodParameters:
Name Flags
lowThreadsThreshold
public void execute(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.get:()J
lstore 3
start local 3 1: lload 3
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getHi:(J)I
istore 5
start local 5 2: iload 5
ldc -2147483648
if_icmpne 4
3: new java.util.concurrent.RejectedExecutionException
dup
aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.util.concurrent.RejectedExecutionException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Runnable top long int
StackMap stack:
lload 3
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getLo:(J)I
istore 6
start local 6 5: iload 6
ifgt 6
iload 5
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
if_icmpge 6
iconst_1
goto 7
StackMap locals: int
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: istore 2
start local 2 8: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
lload 3
iload 5
iload 2
iadd
iload 6
iload 2
iadd
iconst_1
isub
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.compareAndSet:(JII)Z
ifne 10
end local 6 end local 5 end local 3 end local 2 9: goto 0
start local 2 10: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Runnable int
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._jobs:Ljava/util/concurrent/BlockingQueue;
aload 1
invokeinterface java.util.concurrent.BlockingQueue.offer:(Ljava/lang/Object;)Z
ifne 14
11: aload 0
iload 2
ineg
iconst_1
iload 2
isub
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.addCounts:(II)Z
ifeq 13
12: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "{} rejected {}"
aload 0
aload 1
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
13: StackMap locals:
StackMap stack:
new java.util.concurrent.RejectedExecutionException
dup
aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.util.concurrent.RejectedExecutionException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 18
15: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "queue {} startThread={}"
aload 1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
16: goto 18
17: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.startThread:()V
18: StackMap locals:
StackMap stack:
iload 2
iinc 2 -1
ifgt 17
19: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 20 1 job Ljava/lang/Runnable;
8 9 2 startThread I
10 20 2 startThread I
1 9 3 counts J
2 9 5 threads I
5 9 6 idle I
MethodParameters:
Name Flags
job
public boolean tryExecute(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
aload 1
invokeinterface org.eclipse.jetty.util.thread.TryExecutor.tryExecute:(Ljava/lang/Runnable;)Z
ifeq 2
iconst_1
ireturn
StackMap locals: org.eclipse.jetty.util.thread.TryExecutor
StackMap stack:
2: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 3 1 task Ljava/lang/Runnable;
1 3 2 tryExecutor Lorg/eclipse/jetty/util/thread/TryExecutor;
MethodParameters:
Name Flags
task
public void join();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._joinLock:Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.lock:()Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
astore 3
start local 3 2: goto 4
3: StackMap locals: java.lang.Throwable java.lang.Throwable org.eclipse.jetty.util.thread.AutoLock$WithCondition
StackMap stack:
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.await:()V
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isRunning:()Z
ifne 3
5: aload 3
ifnull 12
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.close:()V
goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 1
aload 3
ifnull 7
aload 3
invokevirtual org.eclipse.jetty.util.thread.AutoLock$WithCondition.close:()V
end local 3 StackMap locals:
StackMap stack:
7: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 2
aload 1
ifnonnull 9
aload 2
astore 1
goto 10
StackMap locals:
StackMap stack:
9: aload 1
aload 2
if_acmpeq 10
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
10: aload 1
athrow
11: StackMap locals:
StackMap stack:
lconst_1
invokestatic java.lang.Thread.sleep:(J)V
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isStopping:()Z
ifne 11
13: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
2 7 3 l Lorg/eclipse/jetty/util/thread/AutoLock$WithCondition;
Exception table:
from to target type
2 5 6 any
1 8 8 any
Exceptions:
throws java.lang.InterruptedException
public int getThreads();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.getHi:()I
istore 1
start local 1 1: iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
1 2 1 threads I
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "number of threads in the pool")
public int getIdleThreads();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.getLo:()I
istore 1
start local 1 1: iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
1 2 1 idle I
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "number of idle threads in the pool")
public int getBusyThreads();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
instanceof org.eclipse.jetty.util.thread.ReservedThreadExecutor
ifeq 1
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
checkcast org.eclipse.jetty.util.thread.ReservedThreadExecutor
invokevirtual org.eclipse.jetty.util.thread.ReservedThreadExecutor.getAvailable:()I
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 1
start local 1 3: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getThreads:()I
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getIdleThreads:()I
isub
iload 1
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
3 4 1 reserved I
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "number of busy threads in the pool")
public boolean isLowOnThreads();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getMaxThreads:()I
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getThreads:()I
isub
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getIdleThreads:()I
iadd
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getQueueSize:()I
isub
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getLowThreadsThreshold:()I
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedAttribute(value = "thread pool is low on threads", readonly = true)
private void ensureThreads();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.get:()J
lstore 1
start local 1 1: lload 1
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getHi:(J)I
istore 3
start local 3 2: iload 3
ldc -2147483648
if_icmpne 4
3: goto 9
4: StackMap locals: long int
StackMap stack:
lload 1
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getLo:(J)I
istore 4
start local 4 5: iload 3
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._minThreads:I
if_icmplt 6
iload 4
ifge 9
iload 3
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._maxThreads:I
if_icmpge 9
6: StackMap locals: int
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
lload 1
iload 3
iconst_1
iadd
iload 4
iconst_1
iadd
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.compareAndSet:(JII)Z
ifeq 0
7: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.startThread:()V
end local 4 end local 3 end local 1 8: goto 0
9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
1 8 1 counts J
2 8 3 threads I
5 8 4 idle I
protected void startThread();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threadFactory:Ljava/util/concurrent/ThreadFactory;
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._runnable:Ljava/lang/Runnable;
invokeinterface java.util.concurrent.ThreadFactory.newThread:(Ljava/lang/Runnable;)Ljava/lang/Thread;
astore 2
start local 2 2: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 4
3: getstatic org.eclipse.jetty.util.thread.QueuedThreadPool.LOG:Lorg/slf4j/Logger;
ldc "Starting {}"
aload 2
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
4: StackMap locals: int java.lang.Thread
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._lastShrink:Ljava/util/concurrent/atomic/AtomicLong;
invokestatic java.lang.System.nanoTime:()J
invokevirtual java.util.concurrent.atomic.AtomicLong.set:(J)V
6: aload 2
invokevirtual java.lang.Thread.start:()V
7: iconst_1
istore 1
end local 2 8: goto 13
9: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int
StackMap stack: java.lang.Throwable
astore 3
10: iload 1
ifne 12
11: aload 0
iconst_m1
iconst_m1
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.addCounts:(II)Z
pop
12: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int top java.lang.Throwable
StackMap stack:
aload 3
athrow
13: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool int
StackMap stack:
iload 1
ifne 15
14: aload 0
iconst_m1
iconst_m1
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.addCounts:(II)Z
pop
15: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
1 16 1 started Z
2 8 2 thread Ljava/lang/Thread;
Exception table:
from to target type
1 9 9 any
private boolean addCounts(int, int);
descriptor: (II)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.get:()J
lstore 3
start local 3 1: lload 3
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getHi:(J)I
istore 5
start local 5 2: lload 3
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getLo:(J)I
istore 6
start local 6 3: iload 5
ldc -2147483648
if_icmpne 7
4: iload 5
iload 6
iload 2
iadd
invokestatic org.eclipse.jetty.util.AtomicBiInteger.encode:(II)J
lstore 7
start local 7 5: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
lload 3
lload 7
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.compareAndSet:(JJ)Z
ifeq 0
6: iconst_0
ireturn
end local 7 7: StackMap locals: long int int
StackMap stack:
iload 5
iload 1
iadd
iload 6
iload 2
iadd
invokestatic org.eclipse.jetty.util.AtomicBiInteger.encode:(II)J
lstore 7
start local 7 8: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
lload 3
lload 7
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.compareAndSet:(JJ)Z
ifeq 0
9: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 10 1 deltaThreads I
0 10 2 deltaIdle I
1 10 3 encoded J
2 10 5 threads I
3 10 6 idle I
5 7 7 update J
8 10 7 update J
MethodParameters:
Name Flags
deltaThreads
deltaIdle
public java.lang.Thread newThread(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)Ljava/lang/Thread;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: new java.lang.Thread
dup
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threadGroup:Ljava/lang/ThreadGroup;
aload 1
invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;)V
astore 2
start local 2 1: aload 2
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isDaemon:()Z
invokevirtual java.lang.Thread.setDaemon:(Z)V
2: aload 2
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getThreadsPriority:()I
invokevirtual java.lang.Thread.setPriority:(I)V
3: aload 2
new java.lang.StringBuilder
dup
aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._name:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.Thread.getId:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.Thread.setName:(Ljava/lang/String;)V
4: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 5 1 runnable Ljava/lang/Runnable;
1 5 2 thread Ljava/lang/Thread;
MethodParameters:
Name Flags
runnable
protected void removeThread(java.lang.Thread);
descriptor: (Ljava/lang/Thread;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 thread Ljava/lang/Thread;
MethodParameters:
Name Flags
thread
public void dump(java.lang.Appendable, java.lang.String);
descriptor: (Ljava/lang/Appendable;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=9, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayList
dup
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getMaxThreads:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 1: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 13
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Appendable java.lang.String java.util.List top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 4
start local 4 3: aload 4
invokevirtual java.lang.Thread.getStackTrace:()[Ljava/lang/StackTraceElement;
astore 6
start local 6 4: aload 0
aload 6
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getCompressedStackTag:([Ljava/lang/StackTraceElement;)Ljava/lang/String;
astore 7
start local 7 5: ldc "%s %s tid=%d prio=%d"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 4
invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 4
invokevirtual java.lang.Thread.getState:()Ljava/lang/Thread$State;
aastore
dup
iconst_2
aload 4
invokevirtual java.lang.Thread.getId:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_3
aload 4
invokevirtual java.lang.Thread.getPriority:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 8
start local 8 6: aload 7
invokestatic org.eclipse.jetty.util.StringUtil.isBlank:(Ljava/lang/String;)Z
ifne 8
7: aload 3
new java.lang.StringBuilder
dup
aload 8
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
goto 13
8: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Appendable java.lang.String java.util.List java.lang.Thread java.util.Iterator java.lang.StackTraceElement[] java.lang.String java.lang.String
StackMap stack:
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isDetailedDump:()Z
ifeq 10
9: aload 3
aload 8
aload 6
invokedynamic dump(Ljava/lang/String;[Ljava/lang/StackTraceElement;)Lorg/eclipse/jetty/util/component/Dumpable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Appendable;Ljava/lang/String;)V
org/eclipse/jetty/util/thread/QueuedThreadPool.lambda$1(Ljava/lang/String;[Ljava/lang/StackTraceElement;Ljava/lang/Appendable;Ljava/lang/String;)V (6)
(Ljava/lang/Appendable;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
goto 13
10: StackMap locals:
StackMap stack:
aload 3
new java.lang.StringBuilder
dup
aload 8
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " @ "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
arraylength
ifle 11
aload 6
iconst_0
aaload
invokevirtual java.lang.StackTraceElement.toString:()Ljava/lang/String;
goto 12
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Appendable java.lang.String java.util.List java.lang.Thread java.util.Iterator java.lang.StackTraceElement[] java.lang.String java.lang.String
StackMap stack: java.util.List java.lang.StringBuilder
11: ldc "???"
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Appendable java.lang.String java.util.List java.lang.Thread java.util.Iterator java.lang.StackTraceElement[] java.lang.String java.lang.String
StackMap stack: java.util.List java.lang.StringBuilder java.lang.String
12: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 6 end local 4 13: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Appendable java.lang.String java.util.List top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
14: new org.eclipse.jetty.util.component.DumpableCollection
dup
ldc "threads"
aload 3
invokespecial org.eclipse.jetty.util.component.DumpableCollection.<init>:(Ljava/lang/String;Ljava/util/Collection;)V
astore 4
start local 4 15: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.isDetailedDump:()Z
ifeq 17
16: aload 0
aload 1
aload 2
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
new org.eclipse.jetty.util.component.DumpableCollection
dup
ldc "jobs"
new java.util.ArrayList
dup
aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getQueue:()Ljava/util/concurrent/BlockingQueue;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
invokespecial org.eclipse.jetty.util.component.DumpableCollection.<init>:(Ljava/lang/String;Ljava/util/Collection;)V
aastore
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.dumpObjects:(Ljava/lang/Appendable;Ljava/lang/String;[Ljava/lang/Object;)V
goto 18
17: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.Appendable java.lang.String java.util.List org.eclipse.jetty.util.component.DumpableCollection
StackMap stack:
aload 0
aload 1
aload 2
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.dumpObjects:(Ljava/lang/Appendable;Ljava/lang/String;[Ljava/lang/Object;)V
18: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 19 1 out Ljava/lang/Appendable;
0 19 2 indent Ljava/lang/String;
1 19 3 threads Ljava/util/List<Ljava/lang/Object;>;
3 13 4 thread Ljava/lang/Thread;
4 13 6 trace [Ljava/lang/StackTraceElement;
5 13 7 stackTag Ljava/lang/String;
6 13 8 baseThreadInfo Ljava/lang/String;
15 19 4 threadsDump Lorg/eclipse/jetty/util/component/DumpableCollection;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
indent
private java.lang.String getCompressedStackTag(java.lang.StackTraceElement[]);
descriptor: ([Ljava/lang/StackTraceElement;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 11
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.StackTraceElement[] top int int java.lang.StackTraceElement[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: ldc "idleJobPoll"
aload 2
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 2
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
ldc Lorg/eclipse/jetty/util/thread/QueuedThreadPool$Runner;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: ldc "IDLE"
areturn
4: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.StackTraceElement[] java.lang.StackTraceElement int int java.lang.StackTraceElement[]
StackMap stack:
ldc "reservedWait"
aload 2
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
aload 2
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
ldc "ReservedThread"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 6
5: ldc "RESERVED"
areturn
6: StackMap locals:
StackMap stack:
ldc "select"
aload 2
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
aload 2
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
ldc "SelectorProducer"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 8
7: ldc "SELECTING"
areturn
8: StackMap locals:
StackMap stack:
ldc "accept"
aload 2
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
aload 2
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
ldc "ServerConnector"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 10
9: ldc "ACCEPTING"
areturn
end local 2 10: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool java.lang.StackTraceElement[] top int int java.lang.StackTraceElement[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
iload 4
if_icmplt 1
12: ldc ""
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 13 1 trace [Ljava/lang/StackTraceElement;
2 10 2 t Ljava/lang/StackTraceElement;
MethodParameters:
Name Flags
trace
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._counts:Lorg/eclipse/jetty/util/AtomicBiInteger;
invokevirtual org.eclipse.jetty.util.AtomicBiInteger.get:()J
lstore 1
start local 1 1: iconst_0
lload 1
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getHi:(J)I
invokestatic java.lang.Math.max:(II)I
istore 3
start local 3 2: iconst_0
lload 1
invokestatic org.eclipse.jetty.util.AtomicBiInteger.getLo:(J)I
invokestatic java.lang.Math.max:(II)I
istore 4
start local 4 3: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getQueueSize:()I
istore 5
start local 5 4: ldc "%s[%s]@%x{%s,%d<=%d<=%d,i=%d,r=%d,q=%d}[%s]"
bipush 11
anewarray java.lang.Object
dup
iconst_0
5: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_1
6: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._name:Ljava/lang/String;
aastore
dup
iconst_2
7: aload 0
invokevirtual java.lang.Object.hashCode:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
8: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getState:()Ljava/lang/String;
aastore
dup
iconst_4
9: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getMinThreads:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_5
10: iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
bipush 6
11: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getMaxThreads:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
bipush 7
12: iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
bipush 8
13: aload 0
invokevirtual org.eclipse.jetty.util.thread.QueuedThreadPool.getReservedThreads:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
bipush 9
14: iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
bipush 10
15: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._tryExecutor:Lorg/eclipse/jetty/util/thread/TryExecutor;
aastore
16: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
1 17 1 count J
2 17 3 threads I
3 17 4 idle I
4 17 5 queue I
protected void runJob(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.lang.Runnable.run:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 2 1 job Ljava/lang/Runnable;
MethodParameters:
Name Flags
job
protected java.util.concurrent.BlockingQueue<java.lang.Runnable> getQueue();
descriptor: ()Ljava/util/concurrent/BlockingQueue;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._jobs:Ljava/util/concurrent/BlockingQueue;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
Signature: ()Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
public boolean interruptThread(long);
descriptor: (J)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 3
start local 3 2: aload 3
invokevirtual java.lang.Thread.getId:()J
lload 1
lcmp
ifne 5
3: aload 3
invokevirtual java.lang.Thread.interrupt:()V
4: iconst_1
ireturn
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 7 1 id J
2 5 3 thread Ljava/lang/Thread;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedOperation(value = "interrupts a pool thread")
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "id")
MethodParameters:
Name Flags
id
public java.lang.String dumpThread(long);
descriptor: (J)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.util.thread.QueuedThreadPool._threads:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 12
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Thread
astore 3
start local 3 2: aload 3
invokevirtual java.lang.Thread.getId:()J
lload 1
lcmp
ifne 12
3: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 5
start local 5 4: aload 5
aload 3
invokevirtual java.lang.Thread.getId:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 5
aload 3
invokevirtual java.lang.Thread.getState:()Ljava/lang/Thread$State;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: aload 3
invokevirtual java.lang.Thread.getStackTrace:()[Ljava/lang/StackTraceElement;
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 10
StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long java.lang.Thread java.util.Iterator java.lang.StringBuilder top int int java.lang.StackTraceElement[]
StackMap stack:
7: aload 9
iload 7
aaload
astore 6
start local 6 8: aload 5
ldc " at "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StackTraceElement.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 6 9: iinc 7 1
StackMap locals:
StackMap stack:
10: iload 7
iload 8
if_icmplt 7
11: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 5 end local 3 12: StackMap locals: org.eclipse.jetty.util.thread.QueuedThreadPool long top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
13: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/eclipse/jetty/util/thread/QueuedThreadPool;
0 14 1 id J
2 12 3 thread Ljava/lang/Thread;
4 12 5 buf Ljava/lang/StringBuilder;
8 9 6 element Ljava/lang/StackTraceElement;
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedOperation(value = "dumps a pool thread stack")
RuntimeVisibleParameterAnnotations:
0:
org.eclipse.jetty.util.annotation.Name(value = "id")
MethodParameters:
Name Flags
id
private static void lambda$0();
descriptor: ()V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=0, args_size=0
0: return
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$1(java.lang.String, java.lang.StackTraceElement[], java.lang.Appendable, java.lang.String);
descriptor: (Ljava/lang/String;[Ljava/lang/StackTraceElement;Ljava/lang/Appendable;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 2 start local 3 0: aload 2
aload 3
aload 0
aload 1
invokestatic org.eclipse.jetty.util.component.Dumpable.dumpObjects:(Ljava/lang/Appendable;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
return
end local 3 end local 2 LocalVariableTable:
Start End Slot Name Signature
0 1 2 o Ljava/lang/Appendable;
0 1 3 i Ljava/lang/String;
Exceptions:
throws java.io.IOException
}
SourceFile: "QueuedThreadPool.java"
NestMembers:
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner
InnerClasses:
public final State = java.lang.Thread$State of java.lang.Thread
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public KeySetView = java.util.concurrent.ConcurrentHashMap$KeySetView of java.util.concurrent.ConcurrentHashMap
public WithCondition = org.eclipse.jetty.util.thread.AutoLock$WithCondition of org.eclipse.jetty.util.thread.AutoLock
private Runner = org.eclipse.jetty.util.thread.QueuedThreadPool$Runner of org.eclipse.jetty.util.thread.QueuedThreadPool
public abstract SizedThreadPool = org.eclipse.jetty.util.thread.ThreadPool$SizedThreadPool of org.eclipse.jetty.util.thread.ThreadPool
RuntimeVisibleAnnotations:
org.eclipse.jetty.util.annotation.ManagedObject(value = "A thread pool")