final class org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory implements java.util.concurrent.ThreadFactory
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory
super_class: java.lang.Object
{
private final java.util.concurrent.ThreadFactory defaultFactory;
descriptor: Ljava/util/concurrent/ThreadFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicInteger counter;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 // org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory this
0: .line 488
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 490
aload 0 /* this */
invokestatic java.util.concurrent.Executors.defaultThreadFactory:()Ljava/util/concurrent/ThreadFactory;
putfield org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory.defaultFactory:Ljava/util/concurrent/ThreadFactory;
2: .line 491
aload 0 /* this */
new java.util.concurrent.atomic.AtomicInteger
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
putfield org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory.counter:Ljava/util/concurrent/atomic/AtomicInteger;
3: .line 488
return
end local 0 // org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/glassfish/grizzly/servlet/AsyncContextImpl$AsyncPoolThreadFactory;
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 // org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory this
start local 1 // java.lang.Runnable r
0: .line 498
aload 0 /* this */
getfield org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory.defaultFactory:Ljava/util/concurrent/ThreadFactory;
aload 1 /* r */
invokeinterface java.util.concurrent.ThreadFactory.newThread:(Ljava/lang/Runnable;)Ljava/lang/Thread;
astore 2 /* t */
start local 2 // java.lang.Thread t
1: .line 499
aload 2 /* t */
new java.lang.StringBuilder
dup
ldc "grizzly-web-async-thread-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory.counter:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.Thread.setName:(Ljava/lang/String;)V
2: .line 500
aload 2 /* t */
areturn
end local 2 // java.lang.Thread t
end local 1 // java.lang.Runnable r
end local 0 // org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/glassfish/grizzly/servlet/AsyncContextImpl$AsyncPoolThreadFactory;
0 3 1 r Ljava/lang/Runnable;
1 3 2 t Ljava/lang/Thread;
MethodParameters:
Name Flags
r
}
SourceFile: "AsyncContextImpl.java"
NestHost: org.glassfish.grizzly.servlet.AsyncContextImpl
InnerClasses:
private final AsyncPoolThreadFactory = org.glassfish.grizzly.servlet.AsyncContextImpl$AsyncPoolThreadFactory of org.glassfish.grizzly.servlet.AsyncContextImpl