public class java.util.concurrent.Executors
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.util.concurrent.Executors
super_class: java.lang.Object
{
public static java.util.concurrent.ExecutorService newFixedThreadPool(int);
descriptor: (I)Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ThreadPoolExecutor
dup
iload 0
iload 0
1: lconst_0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
2: new java.util.concurrent.LinkedBlockingQueue
dup
invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
3: invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 nThreads I
MethodParameters:
Name Flags
nThreads
public static java.util.concurrent.ExecutorService newWorkStealingPool(int);
descriptor: (I)Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ForkJoinPool
dup
1: iload 0
2: getstatic java.util.concurrent.ForkJoinPool.defaultForkJoinWorkerThreadFactory:Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;
3: aconst_null
iconst_1
4: invokespecial java.util.concurrent.ForkJoinPool.<init>:(ILjava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;Ljava/lang/Thread$UncaughtExceptionHandler;Z)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 parallelism I
MethodParameters:
Name Flags
parallelism
public static java.util.concurrent.ExecutorService newWorkStealingPool();
descriptor: ()Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: new java.util.concurrent.ForkJoinPool
dup
1: invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
invokevirtual java.lang.Runtime.availableProcessors:()I
2: getstatic java.util.concurrent.ForkJoinPool.defaultForkJoinWorkerThreadFactory:Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;
3: aconst_null
iconst_1
4: invokespecial java.util.concurrent.ForkJoinPool.<init>:(ILjava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;Ljava/lang/Thread$UncaughtExceptionHandler;Z)V
areturn
LocalVariableTable:
Start End Slot Name Signature
public static java.util.concurrent.ExecutorService newFixedThreadPool(int, java.util.concurrent.ThreadFactory);
descriptor: (ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=2, args_size=2
start local 0 start local 1 0: new java.util.concurrent.ThreadPoolExecutor
dup
iload 0
iload 0
1: lconst_0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
2: new java.util.concurrent.LinkedBlockingQueue
dup
invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
3: aload 1
4: invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 nThreads I
0 5 1 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
nThreads
threadFactory
public static java.util.concurrent.ExecutorService newSingleThreadExecutor();
descriptor: ()Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=11, locals=0, args_size=0
0: new java.util.concurrent.Executors$FinalizableDelegatedExecutorService
dup
1: new java.util.concurrent.ThreadPoolExecutor
dup
iconst_1
iconst_1
2: lconst_0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
3: new java.util.concurrent.LinkedBlockingQueue
dup
invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
4: invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
5: invokespecial java.util.concurrent.Executors$FinalizableDelegatedExecutorService.<init>:(Ljava/util/concurrent/ExecutorService;)V
areturn
LocalVariableTable:
Start End Slot Name Signature
public static java.util.concurrent.ExecutorService newSingleThreadExecutor(java.util.concurrent.ThreadFactory);
descriptor: (Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=11, locals=1, args_size=1
start local 0 0: new java.util.concurrent.Executors$FinalizableDelegatedExecutorService
dup
1: new java.util.concurrent.ThreadPoolExecutor
dup
iconst_1
iconst_1
2: lconst_0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
3: new java.util.concurrent.LinkedBlockingQueue
dup
invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
4: aload 0
5: invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
6: invokespecial java.util.concurrent.Executors$FinalizableDelegatedExecutorService.<init>:(Ljava/util/concurrent/ExecutorService;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
threadFactory
public static java.util.concurrent.ExecutorService newCachedThreadPool();
descriptor: ()Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=0, args_size=0
0: new java.util.concurrent.ThreadPoolExecutor
dup
iconst_0
ldc 2147483647
1: ldc 60
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
2: new java.util.concurrent.SynchronousQueue
dup
invokespecial java.util.concurrent.SynchronousQueue.<init>:()V
3: invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
areturn
LocalVariableTable:
Start End Slot Name Signature
public static java.util.concurrent.ExecutorService newCachedThreadPool(java.util.concurrent.ThreadFactory);
descriptor: (Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ThreadPoolExecutor
dup
iconst_0
ldc 2147483647
1: ldc 60
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
2: new java.util.concurrent.SynchronousQueue
dup
invokespecial java.util.concurrent.SynchronousQueue.<init>:()V
3: aload 0
4: invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
threadFactory
public static java.util.concurrent.ScheduledExecutorService newSingleThreadScheduledExecutor();
descriptor: ()Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: new java.util.concurrent.Executors$DelegatedScheduledExecutorService
dup
1: new java.util.concurrent.ScheduledThreadPoolExecutor
dup
iconst_1
invokespecial java.util.concurrent.ScheduledThreadPoolExecutor.<init>:(I)V
2: invokespecial java.util.concurrent.Executors$DelegatedScheduledExecutorService.<init>:(Ljava/util/concurrent/ScheduledExecutorService;)V
areturn
LocalVariableTable:
Start End Slot Name Signature
public static java.util.concurrent.ScheduledExecutorService newSingleThreadScheduledExecutor(java.util.concurrent.ThreadFactory);
descriptor: (Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: new java.util.concurrent.Executors$DelegatedScheduledExecutorService
dup
1: new java.util.concurrent.ScheduledThreadPoolExecutor
dup
iconst_1
aload 0
invokespecial java.util.concurrent.ScheduledThreadPoolExecutor.<init>:(ILjava/util/concurrent/ThreadFactory;)V
2: invokespecial java.util.concurrent.Executors$DelegatedScheduledExecutorService.<init>:(Ljava/util/concurrent/ScheduledExecutorService;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
threadFactory
public static java.util.concurrent.ScheduledExecutorService newScheduledThreadPool(int);
descriptor: (I)Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ScheduledThreadPoolExecutor
dup
iload 0
invokespecial java.util.concurrent.ScheduledThreadPoolExecutor.<init>:(I)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 corePoolSize I
MethodParameters:
Name Flags
corePoolSize
public static java.util.concurrent.ScheduledExecutorService newScheduledThreadPool(int, java.util.concurrent.ThreadFactory);
descriptor: (ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new java.util.concurrent.ScheduledThreadPoolExecutor
dup
iload 0
aload 1
invokespecial java.util.concurrent.ScheduledThreadPoolExecutor.<init>:(ILjava/util/concurrent/ThreadFactory;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 corePoolSize I
0 1 1 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
corePoolSize
threadFactory
public static java.util.concurrent.ExecutorService unconfigurableExecutorService(java.util.concurrent.ExecutorService);
descriptor: (Ljava/util/concurrent/ExecutorService;)Ljava/util/concurrent/ExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$DelegatedExecutorService
dup
aload 0
invokespecial java.util.concurrent.Executors$DelegatedExecutorService.<init>:(Ljava/util/concurrent/ExecutorService;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 executor Ljava/util/concurrent/ExecutorService;
MethodParameters:
Name Flags
executor
public static java.util.concurrent.ScheduledExecutorService unconfigurableScheduledExecutorService(java.util.concurrent.ScheduledExecutorService);
descriptor: (Ljava/util/concurrent/ScheduledExecutorService;)Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$DelegatedScheduledExecutorService
dup
aload 0
invokespecial java.util.concurrent.Executors$DelegatedScheduledExecutorService.<init>:(Ljava/util/concurrent/ScheduledExecutorService;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 executor Ljava/util/concurrent/ScheduledExecutorService;
MethodParameters:
Name Flags
executor
public static java.util.concurrent.ThreadFactory defaultThreadFactory();
descriptor: ()Ljava/util/concurrent/ThreadFactory;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.concurrent.Executors$DefaultThreadFactory
dup
invokespecial java.util.concurrent.Executors$DefaultThreadFactory.<init>:()V
areturn
LocalVariableTable:
Start End Slot Name Signature
public static java.util.concurrent.ThreadFactory privilegedThreadFactory();
descriptor: ()Ljava/util/concurrent/ThreadFactory;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.concurrent.Executors$PrivilegedThreadFactory
dup
invokespecial java.util.concurrent.Executors$PrivilegedThreadFactory.<init>:()V
areturn
LocalVariableTable:
Start End Slot Name Signature
public static <T> java.util.concurrent.Callable<T> callable(java.lang.Runnable, T);
descriptor: (Ljava/lang/Runnable;Ljava/lang/Object;)Ljava/util/concurrent/Callable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$RunnableAdapter
dup
aload 0
aload 1
invokespecial java.util.concurrent.Executors$RunnableAdapter.<init>:(Ljava/lang/Runnable;Ljava/lang/Object;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 task Ljava/lang/Runnable;
0 3 1 result TT;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Runnable;TT;)Ljava/util/concurrent/Callable<TT;>;
MethodParameters:
Name Flags
task
result
public static java.util.concurrent.Callable<java.lang.Object> callable(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)Ljava/util/concurrent/Callable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$RunnableAdapter
dup
aload 0
aconst_null
invokespecial java.util.concurrent.Executors$RunnableAdapter.<init>:(Ljava/lang/Runnable;Ljava/lang/Object;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 task Ljava/lang/Runnable;
Signature: (Ljava/lang/Runnable;)Ljava/util/concurrent/Callable<Ljava/lang/Object;>;
MethodParameters:
Name Flags
task
public static java.util.concurrent.Callable<java.lang.Object> callable(java.security.PrivilegedAction<?>);
descriptor: (Ljava/security/PrivilegedAction;)Ljava/util/concurrent/Callable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$1
dup
aload 0
invokespecial java.util.concurrent.Executors$1.<init>:(Ljava/security/PrivilegedAction;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 action Ljava/security/PrivilegedAction<*>;
Signature: (Ljava/security/PrivilegedAction<*>;)Ljava/util/concurrent/Callable<Ljava/lang/Object;>;
MethodParameters:
Name Flags
action final
public static java.util.concurrent.Callable<java.lang.Object> callable(java.security.PrivilegedExceptionAction<?>);
descriptor: (Ljava/security/PrivilegedExceptionAction;)Ljava/util/concurrent/Callable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$2
dup
aload 0
invokespecial java.util.concurrent.Executors$2.<init>:(Ljava/security/PrivilegedExceptionAction;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 action Ljava/security/PrivilegedExceptionAction<*>;
Signature: (Ljava/security/PrivilegedExceptionAction<*>;)Ljava/util/concurrent/Callable<Ljava/lang/Object;>;
MethodParameters:
Name Flags
action final
public static <T> java.util.concurrent.Callable<T> privilegedCallable(java.util.concurrent.Callable<T>);
descriptor: (Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Callable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$PrivilegedCallable
dup
aload 0
invokespecial java.util.concurrent.Executors$PrivilegedCallable.<init>:(Ljava/util/concurrent/Callable;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 callable Ljava/util/concurrent/Callable<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;)Ljava/util/concurrent/Callable<TT;>;
MethodParameters:
Name Flags
callable
public static <T> java.util.concurrent.Callable<T> privilegedCallableUsingCurrentClassLoader(java.util.concurrent.Callable<T>);
descriptor: (Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Callable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader
dup
aload 0
invokespecial java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader.<init>:(Ljava/util/concurrent/Callable;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 callable Ljava/util/concurrent/Callable<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;)Ljava/util/concurrent/Callable<TT;>;
MethodParameters:
Name Flags
callable
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/Executors;
}
SourceFile: "Executors.java"
NestMembers:
java.util.concurrent.Executors$1 java.util.concurrent.Executors$2 java.util.concurrent.Executors$DefaultThreadFactory java.util.concurrent.Executors$DelegatedExecutorService java.util.concurrent.Executors$DelegatedScheduledExecutorService java.util.concurrent.Executors$FinalizableDelegatedExecutorService java.util.concurrent.Executors$PrivilegedCallable java.util.concurrent.Executors$PrivilegedCallable$1 java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader$1 java.util.concurrent.Executors$PrivilegedThreadFactory java.util.concurrent.Executors$PrivilegedThreadFactory$1 java.util.concurrent.Executors$PrivilegedThreadFactory$1$1 java.util.concurrent.Executors$RunnableAdapter
InnerClasses:
public abstract UncaughtExceptionHandler = java.lang.Thread$UncaughtExceptionHandler of java.lang.Thread
java.util.concurrent.Executors$1
java.util.concurrent.Executors$2
private DefaultThreadFactory = java.util.concurrent.Executors$DefaultThreadFactory of java.util.concurrent.Executors
private DelegatedExecutorService = java.util.concurrent.Executors$DelegatedExecutorService of java.util.concurrent.Executors
private DelegatedScheduledExecutorService = java.util.concurrent.Executors$DelegatedScheduledExecutorService of java.util.concurrent.Executors
private FinalizableDelegatedExecutorService = java.util.concurrent.Executors$FinalizableDelegatedExecutorService of java.util.concurrent.Executors
private final PrivilegedCallable = java.util.concurrent.Executors$PrivilegedCallable of java.util.concurrent.Executors
private final PrivilegedCallableUsingCurrentClassLoader = java.util.concurrent.Executors$PrivilegedCallableUsingCurrentClassLoader of java.util.concurrent.Executors
private PrivilegedThreadFactory = java.util.concurrent.Executors$PrivilegedThreadFactory of java.util.concurrent.Executors
private final RunnableAdapter = java.util.concurrent.Executors$RunnableAdapter of java.util.concurrent.Executors
public abstract ForkJoinWorkerThreadFactory = java.util.concurrent.ForkJoinPool$ForkJoinWorkerThreadFactory of java.util.concurrent.ForkJoinPool