public abstract class reactor.core.scheduler.Schedulers
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: reactor.core.scheduler.Schedulers
super_class: java.lang.Object
{
public static final int DEFAULT_POOL_SIZE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static volatile java.util.function.BiConsumer<java.lang.Thread, ? super java.lang.Throwable> onHandleErrorHook;
descriptor: Ljava/util/function/BiConsumer;
flags: (0x0048) ACC_STATIC, ACC_VOLATILE
Signature: Ljava/util/function/BiConsumer<Ljava/lang/Thread;-Ljava/lang/Throwable;>;
static final java.lang.String ELASTIC;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "elastic"
static final java.lang.String PARALLEL;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "parallel"
static final java.lang.String SINGLE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "single"
static final java.lang.String IMMEDIATE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "immediate"
static final java.lang.String FROM_EXECUTOR;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "fromExecutor"
static final java.lang.String FROM_EXECUTOR_SERVICE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "fromExecutorService"
static java.util.concurrent.atomic.AtomicReference<reactor.core.scheduler.Schedulers$CachedScheduler> CACHED_ELASTIC;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0008) ACC_STATIC
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lreactor/core/scheduler/Schedulers$CachedScheduler;>;
static java.util.concurrent.atomic.AtomicReference<reactor.core.scheduler.Schedulers$CachedScheduler> CACHED_PARALLEL;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0008) ACC_STATIC
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lreactor/core/scheduler/Schedulers$CachedScheduler;>;
static java.util.concurrent.atomic.AtomicReference<reactor.core.scheduler.Schedulers$CachedScheduler> CACHED_SINGLE;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0008) ACC_STATIC
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lreactor/core/scheduler/Schedulers$CachedScheduler;>;
static final java.util.function.Supplier<reactor.core.scheduler.Scheduler> ELASTIC_SUPPLIER;
descriptor: Ljava/util/function/Supplier;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/function/Supplier<Lreactor/core/scheduler/Scheduler;>;
static final java.util.function.Supplier<reactor.core.scheduler.Scheduler> PARALLEL_SUPPLIER;
descriptor: Ljava/util/function/Supplier;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/function/Supplier<Lreactor/core/scheduler/Scheduler;>;
static final java.util.function.Supplier<reactor.core.scheduler.Scheduler> SINGLE_SUPPLIER;
descriptor: Ljava/util/function/Supplier;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/function/Supplier<Lreactor/core/scheduler/Scheduler;>;
static final reactor.core.scheduler.Schedulers$Factory DEFAULT;
descriptor: Lreactor/core/scheduler/Schedulers$Factory;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static volatile reactor.core.scheduler.Schedulers$Factory factory;
descriptor: Lreactor/core/scheduler/Schedulers$Factory;
flags: (0x0048) ACC_STATIC, ACC_VOLATILE
static final reactor.util.Logger log;
descriptor: Lreactor/util/Logger;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc "reactor.schedulers.defaultPoolSize"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
1: invokedynamic apply()Ljava/util/function/Function;
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/Object;)Ljava/lang/Object;
java/lang/Integer.parseInt(Ljava/lang/String;)I (6)
(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
2: invokedynamic get()Ljava/util/function/Supplier;
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/Object;
reactor/core/scheduler/Schedulers.lambda$1()Ljava/lang/Integer; (6)
()Ljava/lang/Integer;
invokevirtual java.util.Optional.orElseGet:(Ljava/util/function/Supplier;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
3: putstatic reactor.core.scheduler.Schedulers.DEFAULT_POOL_SIZE:I
4: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
putstatic reactor.core.scheduler.Schedulers.CACHED_ELASTIC:Ljava/util/concurrent/atomic/AtomicReference;
5: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
putstatic reactor.core.scheduler.Schedulers.CACHED_PARALLEL:Ljava/util/concurrent/atomic/AtomicReference;
6: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
putstatic reactor.core.scheduler.Schedulers.CACHED_SINGLE:Ljava/util/concurrent/atomic/AtomicReference;
7: invokedynamic get()Ljava/util/function/Supplier;
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/Object;
reactor/core/scheduler/Schedulers.lambda$2()Lreactor/core/scheduler/Scheduler; (6)
()Lreactor/core/scheduler/Scheduler;
8: putstatic reactor.core.scheduler.Schedulers.ELASTIC_SUPPLIER:Ljava/util/function/Supplier;
9: invokedynamic get()Ljava/util/function/Supplier;
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/Object;
reactor/core/scheduler/Schedulers.lambda$3()Lreactor/core/scheduler/Scheduler; (6)
()Lreactor/core/scheduler/Scheduler;
10: putstatic reactor.core.scheduler.Schedulers.PARALLEL_SUPPLIER:Ljava/util/function/Supplier;
11: invokedynamic get()Ljava/util/function/Supplier;
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/Object;
reactor/core/scheduler/Schedulers.lambda$4()Lreactor/core/scheduler/Scheduler; (6)
()Lreactor/core/scheduler/Scheduler;
putstatic reactor.core.scheduler.Schedulers.SINGLE_SUPPLIER:Ljava/util/function/Supplier;
12: new reactor.core.scheduler.Schedulers$1
dup
invokespecial reactor.core.scheduler.Schedulers$1.<init>:()V
putstatic reactor.core.scheduler.Schedulers.DEFAULT:Lreactor/core/scheduler/Schedulers$Factory;
13: getstatic reactor.core.scheduler.Schedulers.DEFAULT:Lreactor/core/scheduler/Schedulers$Factory;
putstatic reactor.core.scheduler.Schedulers.factory:Lreactor/core/scheduler/Schedulers$Factory;
14: ldc Lreactor/core/scheduler/Schedulers;
invokestatic reactor.util.Loggers.getLogger:(Ljava/lang/Class;)Lreactor/util/Logger;
putstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
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 Lreactor/core/scheduler/Schedulers;
public static reactor.core.scheduler.Scheduler fromExecutor(java.util.concurrent.Executor);
descriptor: (Ljava/util/concurrent/Executor;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokestatic reactor.core.scheduler.Schedulers.fromExecutor:(Ljava/util/concurrent/Executor;Z)Lreactor/core/scheduler/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 executor Ljava/util/concurrent/Executor;
MethodParameters:
Name Flags
executor
public static reactor.core.scheduler.Scheduler fromExecutor(java.util.concurrent.Executor, boolean);
descriptor: (Ljava/util/concurrent/Executor;Z)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifne 2
aload 0
instanceof java.util.concurrent.ExecutorService
ifeq 2
1: aload 0
checkcast java.util.concurrent.ExecutorService
invokestatic reactor.core.scheduler.Schedulers.fromExecutorService:(Ljava/util/concurrent/ExecutorService;)Lreactor/core/scheduler/Scheduler;
areturn
2: StackMap locals:
StackMap stack:
new reactor.core.scheduler.ExecutorScheduler
dup
aload 0
iload 1
invokespecial reactor.core.scheduler.ExecutorScheduler.<init>:(Ljava/util/concurrent/Executor;Z)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 executor Ljava/util/concurrent/Executor;
0 3 1 trampoline Z
MethodParameters:
Name Flags
executor
trampoline
public static reactor.core.scheduler.Scheduler fromExecutorService(java.util.concurrent.ExecutorService);
descriptor: (Ljava/util/concurrent/ExecutorService;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new reactor.core.scheduler.DelegateServiceScheduler
dup
aload 0
invokespecial reactor.core.scheduler.DelegateServiceScheduler.<init>:(Ljava/util/concurrent/ExecutorService;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 executorService Ljava/util/concurrent/ExecutorService;
MethodParameters:
Name Flags
executorService
public static reactor.core.scheduler.Scheduler elastic();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: getstatic reactor.core.scheduler.Schedulers.CACHED_ELASTIC:Ljava/util/concurrent/atomic/AtomicReference;
ldc "elastic"
getstatic reactor.core.scheduler.Schedulers.ELASTIC_SUPPLIER:Ljava/util/function/Supplier;
invokestatic reactor.core.scheduler.Schedulers.cache:(Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/String;Ljava/util/function/Supplier;)Lreactor/core/scheduler/Schedulers$CachedScheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static reactor.core.scheduler.Scheduler parallel();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: getstatic reactor.core.scheduler.Schedulers.CACHED_PARALLEL:Ljava/util/concurrent/atomic/AtomicReference;
ldc "parallel"
getstatic reactor.core.scheduler.Schedulers.PARALLEL_SUPPLIER:Ljava/util/function/Supplier;
invokestatic reactor.core.scheduler.Schedulers.cache:(Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/String;Ljava/util/function/Supplier;)Lreactor/core/scheduler/Schedulers$CachedScheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static reactor.core.scheduler.Scheduler immediate();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic reactor.core.scheduler.ImmediateScheduler.instance:()Lreactor/core/scheduler/Scheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static reactor.core.scheduler.Scheduler newElastic(java.lang.String);
descriptor: (Ljava/lang/String;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
bipush 60
invokestatic reactor.core.scheduler.Schedulers.newElastic:(Ljava/lang/String;I)Lreactor/core/scheduler/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public static reactor.core.scheduler.Scheduler newElastic(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokestatic reactor.core.scheduler.Schedulers.newElastic:(Ljava/lang/String;IZ)Lreactor/core/scheduler/Scheduler;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 ttlSeconds I
MethodParameters:
Name Flags
name
ttlSeconds
public static reactor.core.scheduler.Scheduler newElastic(java.lang.String, int, boolean);
descriptor: (Ljava/lang/String;IZ)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
1: new reactor.core.scheduler.ReactorThreadFactory
dup
aload 0
getstatic reactor.core.scheduler.ElasticScheduler.COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
iload 2
iconst_0
2: invokedynamic accept()Ljava/util/function/BiConsumer;
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/Object;Ljava/lang/Object;)V
reactor/core/scheduler/Schedulers.defaultUncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V (6)
(Ljava/lang/Thread;Ljava/lang/Throwable;)V
3: invokespecial reactor.core.scheduler.ReactorThreadFactory.<init>:(Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicLong;ZZLjava/util/function/BiConsumer;)V
4: invokestatic reactor.core.scheduler.Schedulers.newElastic:(ILjava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 name Ljava/lang/String;
0 5 1 ttlSeconds I
0 5 2 daemon Z
MethodParameters:
Name Flags
name
ttlSeconds
daemon
public static reactor.core.scheduler.Scheduler newElastic(int, java.util.concurrent.ThreadFactory);
descriptor: (ILjava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic reactor.core.scheduler.Schedulers.factory:Lreactor/core/scheduler/Schedulers$Factory;
iload 0
aload 1
invokeinterface reactor.core.scheduler.Schedulers$Factory.newElastic:(ILjava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 ttlSeconds I
0 1 1 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
ttlSeconds
threadFactory
public static reactor.core.scheduler.Scheduler newParallel(java.lang.String);
descriptor: (Ljava/lang/String;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic reactor.core.scheduler.Schedulers.DEFAULT_POOL_SIZE:I
invokestatic reactor.core.scheduler.Schedulers.newParallel:(Ljava/lang/String;I)Lreactor/core/scheduler/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public static reactor.core.scheduler.Scheduler newParallel(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokestatic reactor.core.scheduler.Schedulers.newParallel:(Ljava/lang/String;IZ)Lreactor/core/scheduler/Scheduler;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 parallelism I
MethodParameters:
Name Flags
name
parallelism
public static reactor.core.scheduler.Scheduler newParallel(java.lang.String, int, boolean);
descriptor: (Ljava/lang/String;IZ)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
1: new reactor.core.scheduler.ReactorThreadFactory
dup
aload 0
getstatic reactor.core.scheduler.ParallelScheduler.COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
iload 2
2: iconst_1
invokedynamic accept()Ljava/util/function/BiConsumer;
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/Object;Ljava/lang/Object;)V
reactor/core/scheduler/Schedulers.defaultUncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V (6)
(Ljava/lang/Thread;Ljava/lang/Throwable;)V
3: invokespecial reactor.core.scheduler.ReactorThreadFactory.<init>:(Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicLong;ZZLjava/util/function/BiConsumer;)V
4: invokestatic reactor.core.scheduler.Schedulers.newParallel:(ILjava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 name Ljava/lang/String;
0 5 1 parallelism I
0 5 2 daemon Z
MethodParameters:
Name Flags
name
parallelism
daemon
public static reactor.core.scheduler.Scheduler newParallel(int, java.util.concurrent.ThreadFactory);
descriptor: (ILjava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic reactor.core.scheduler.Schedulers.factory:Lreactor/core/scheduler/Schedulers$Factory;
iload 0
aload 1
invokeinterface reactor.core.scheduler.Schedulers$Factory.newParallel:(ILjava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 parallelism I
0 1 1 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
parallelism
threadFactory
public static reactor.core.scheduler.Scheduler newSingle(java.lang.String);
descriptor: (Ljava/lang/String;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokestatic reactor.core.scheduler.Schedulers.newSingle:(Ljava/lang/String;Z)Lreactor/core/scheduler/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public static reactor.core.scheduler.Scheduler newSingle(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: new reactor.core.scheduler.ReactorThreadFactory
dup
aload 0
getstatic reactor.core.scheduler.SingleScheduler.COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
iload 1
1: iconst_1
invokedynamic accept()Ljava/util/function/BiConsumer;
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/Object;Ljava/lang/Object;)V
reactor/core/scheduler/Schedulers.defaultUncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V (6)
(Ljava/lang/Thread;Ljava/lang/Throwable;)V
2: invokespecial reactor.core.scheduler.ReactorThreadFactory.<init>:(Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicLong;ZZLjava/util/function/BiConsumer;)V
invokestatic reactor.core.scheduler.Schedulers.newSingle:(Ljava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 name Ljava/lang/String;
0 3 1 daemon Z
MethodParameters:
Name Flags
name
daemon
public static reactor.core.scheduler.Scheduler newSingle(java.util.concurrent.ThreadFactory);
descriptor: (Ljava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic reactor.core.scheduler.Schedulers.factory:Lreactor/core/scheduler/Schedulers$Factory;
aload 0
invokeinterface reactor.core.scheduler.Schedulers$Factory.newSingle:(Ljava/util/concurrent/ThreadFactory;)Lreactor/core/scheduler/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 threadFactory Ljava/util/concurrent/ThreadFactory;
MethodParameters:
Name Flags
threadFactory
public static void onHandleError(java.util.function.BiConsumer<java.lang.Thread, ? super java.lang.Throwable>);
descriptor: (Ljava/util/function/BiConsumer;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
invokeinterface reactor.util.Logger.isDebugEnabled:()Z
ifeq 2
1: getstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
ldc "Hooking new default: onHandleError"
invokeinterface reactor.util.Logger.debug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
ldc "onHandleError"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.function.BiConsumer
putstatic reactor.core.scheduler.Schedulers.onHandleErrorHook:Ljava/util/function/BiConsumer;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c Ljava/util/function/BiConsumer<Ljava/lang/Thread;-Ljava/lang/Throwable;>;
Signature: (Ljava/util/function/BiConsumer<Ljava/lang/Thread;-Ljava/lang/Throwable;>;)V
MethodParameters:
Name Flags
c
public static boolean isInNonBlockingThread();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
instanceof reactor.core.scheduler.NonBlocking
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static boolean isNonBlockingThread(java.lang.Thread);
descriptor: (Ljava/lang/Thread;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof reactor.core.scheduler.NonBlocking
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 t Ljava/lang/Thread;
MethodParameters:
Name Flags
t
public static void resetFactory();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic reactor.core.scheduler.Schedulers.DEFAULT:Lreactor/core/scheduler/Schedulers$Factory;
invokestatic reactor.core.scheduler.Schedulers.setFactory:(Lreactor/core/scheduler/Schedulers$Factory;)V
1: return
LocalVariableTable:
Start End Slot Name Signature
public static void resetOnHandleError();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
invokeinterface reactor.util.Logger.isDebugEnabled:()Z
ifeq 2
1: getstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
ldc "Reset to factory defaults: onHandleError"
invokeinterface reactor.util.Logger.debug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aconst_null
putstatic reactor.core.scheduler.Schedulers.onHandleErrorHook:Ljava/util/function/BiConsumer;
3: return
LocalVariableTable:
Start End Slot Name Signature
public static void setFactory(reactor.core.scheduler.Schedulers$Factory);
descriptor: (Lreactor/core/scheduler/Schedulers$Factory;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc "factoryInstance"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: invokestatic reactor.core.scheduler.Schedulers.shutdownNow:()V
2: aload 0
putstatic reactor.core.scheduler.Schedulers.factory:Lreactor/core/scheduler/Schedulers$Factory;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 factoryInstance Lreactor/core/scheduler/Schedulers$Factory;
MethodParameters:
Name Flags
factoryInstance
public static void shutdownNow();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=0
0: getstatic reactor.core.scheduler.Schedulers.CACHED_ELASTIC:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast reactor.core.scheduler.Schedulers$CachedScheduler
astore 0
start local 0 1: getstatic reactor.core.scheduler.Schedulers.CACHED_PARALLEL:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast reactor.core.scheduler.Schedulers$CachedScheduler
astore 1
start local 1 2: getstatic reactor.core.scheduler.Schedulers.CACHED_SINGLE:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast reactor.core.scheduler.Schedulers$CachedScheduler
astore 2
start local 2 3: aload 0
ifnull 4
aload 0
invokevirtual reactor.core.scheduler.Schedulers$CachedScheduler._dispose:()V
4: StackMap locals: reactor.core.scheduler.Schedulers$CachedScheduler reactor.core.scheduler.Schedulers$CachedScheduler reactor.core.scheduler.Schedulers$CachedScheduler
StackMap stack:
aload 1
ifnull 5
aload 1
invokevirtual reactor.core.scheduler.Schedulers$CachedScheduler._dispose:()V
5: StackMap locals:
StackMap stack:
aload 2
ifnull 6
aload 2
invokevirtual reactor.core.scheduler.Schedulers$CachedScheduler._dispose:()V
6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 7 0 oldElastic Lreactor/core/scheduler/Schedulers$CachedScheduler;
2 7 1 oldParallel Lreactor/core/scheduler/Schedulers$CachedScheduler;
3 7 2 oldSingle Lreactor/core/scheduler/Schedulers$CachedScheduler;
public static reactor.core.scheduler.Scheduler single();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: getstatic reactor.core.scheduler.Schedulers.CACHED_SINGLE:Ljava/util/concurrent/atomic/AtomicReference;
ldc "single"
getstatic reactor.core.scheduler.Schedulers.SINGLE_SUPPLIER:Ljava/util/function/Supplier;
invokestatic reactor.core.scheduler.Schedulers.cache:(Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/String;Ljava/util/function/Supplier;)Lreactor/core/scheduler/Schedulers$CachedScheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static reactor.core.scheduler.Scheduler single(reactor.core.scheduler.Scheduler);
descriptor: (Lreactor/core/scheduler/Scheduler;)Lreactor/core/scheduler/Scheduler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new reactor.core.scheduler.SingleWorkerScheduler
dup
aload 0
invokespecial reactor.core.scheduler.SingleWorkerScheduler.<init>:(Lreactor/core/scheduler/Scheduler;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 original Lreactor/core/scheduler/Scheduler;
MethodParameters:
Name Flags
original
static reactor.core.scheduler.Schedulers$CachedScheduler cache(java.util.concurrent.atomic.AtomicReference<reactor.core.scheduler.Schedulers$CachedScheduler>, java.lang.String, java.util.function.Supplier<reactor.core.scheduler.Scheduler>);
descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/String;Ljava/util/function/Supplier;)Lreactor/core/scheduler/Schedulers$CachedScheduler;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast reactor.core.scheduler.Schedulers$CachedScheduler
astore 3
start local 3 1: aload 3
ifnull 3
2: aload 3
areturn
3: StackMap locals: reactor.core.scheduler.Schedulers$CachedScheduler
StackMap stack:
new reactor.core.scheduler.Schedulers$CachedScheduler
dup
aload 1
aload 2
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast reactor.core.scheduler.Scheduler
invokespecial reactor.core.scheduler.Schedulers$CachedScheduler.<init>:(Ljava/lang/String;Lreactor/core/scheduler/Scheduler;)V
astore 3
4: aload 0
aconst_null
aload 3
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 6
5: aload 3
areturn
6: StackMap locals:
StackMap stack:
aload 3
invokevirtual reactor.core.scheduler.Schedulers$CachedScheduler._dispose:()V
7: aload 0
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast reactor.core.scheduler.Schedulers$CachedScheduler
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 reference Ljava/util/concurrent/atomic/AtomicReference<Lreactor/core/scheduler/Schedulers$CachedScheduler;>;
0 8 1 key Ljava/lang/String;
0 8 2 supplier Ljava/util/function/Supplier<Lreactor/core/scheduler/Scheduler;>;
1 8 3 s Lreactor/core/scheduler/Schedulers$CachedScheduler;
Signature: (Ljava/util/concurrent/atomic/AtomicReference<Lreactor/core/scheduler/Schedulers$CachedScheduler;>;Ljava/lang/String;Ljava/util/function/Supplier<Lreactor/core/scheduler/Scheduler;>;)Lreactor/core/scheduler/Schedulers$CachedScheduler;
MethodParameters:
Name Flags
reference
key
supplier
static final void defaultUncaughtException(java.lang.Thread, java.lang.Throwable);
descriptor: (Ljava/lang/Thread;Ljava/lang/Throwable;)V
flags: (0x0018) ACC_STATIC, ACC_FINAL
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
new java.lang.StringBuilder
dup
ldc "Scheduler worker in group "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Thread.getThreadGroup:()Ljava/lang/ThreadGroup;
invokevirtual java.lang.ThreadGroup.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc " failed with an uncaught exception"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
2: invokeinterface reactor.util.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 t Ljava/lang/Thread;
0 4 1 e Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
e
static void handleError(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 1
start local 1 1: aload 0
invokestatic reactor.core.Exceptions.unwrap:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
astore 2
start local 2 2: aload 1
invokevirtual java.lang.Thread.getUncaughtExceptionHandler:()Ljava/lang/Thread$UncaughtExceptionHandler;
astore 3
start local 3 3: aload 3
ifnull 6
4: aload 3
aload 1
aload 2
invokeinterface java.lang.Thread$UncaughtExceptionHandler.uncaughtException:(Ljava/lang/Thread;Ljava/lang/Throwable;)V
5: goto 7
6: StackMap locals: java.lang.Thread java.lang.Throwable java.lang.Thread$UncaughtExceptionHandler
StackMap stack:
getstatic reactor.core.scheduler.Schedulers.log:Lreactor/util/Logger;
ldc "Scheduler worker failed with an uncaught exception"
aload 2
invokeinterface reactor.util.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
7: StackMap locals:
StackMap stack:
getstatic reactor.core.scheduler.Schedulers.onHandleErrorHook:Ljava/util/function/BiConsumer;
ifnull 9
8: getstatic reactor.core.scheduler.Schedulers.onHandleErrorHook:Ljava/util/function/BiConsumer;
aload 1
aload 2
invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
9: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 ex Ljava/lang/Throwable;
1 10 1 thread Ljava/lang/Thread;
2 10 2 t Ljava/lang/Throwable;
3 10 3 x Ljava/lang/Thread$UncaughtExceptionHandler;
MethodParameters:
Name Flags
ex
static reactor.core.Disposable directSchedule(java.util.concurrent.ScheduledExecutorService, java.lang.Runnable, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/concurrent/ScheduledExecutorService;Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lreactor/core/Disposable;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 4 0: new reactor.core.scheduler.SchedulerTask
dup
aload 1
invokespecial reactor.core.scheduler.SchedulerTask.<init>:(Ljava/lang/Runnable;)V
astore 5
start local 5 1: lload 2
lconst_0
lcmp
ifgt 4
2: aload 0
aload 5
invokeinterface java.util.concurrent.ScheduledExecutorService.submit:(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
astore 6
start local 6 3: goto 5
end local 6 4: StackMap locals: reactor.core.scheduler.SchedulerTask
StackMap stack:
aload 0
aload 5
lload 2
aload 4
invokeinterface java.util.concurrent.ScheduledExecutorService.schedule:(Ljava/util/concurrent/Callable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
astore 6
start local 6 5: StackMap locals: java.util.concurrent.Future
StackMap stack:
aload 5
aload 6
invokevirtual reactor.core.scheduler.SchedulerTask.setFuture:(Ljava/util/concurrent/Future;)V
6: aload 5
areturn
end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 exec Ljava/util/concurrent/ScheduledExecutorService;
0 7 1 task Ljava/lang/Runnable;
0 7 2 delay J
0 7 4 unit Ljava/util/concurrent/TimeUnit;
1 7 5 sr Lreactor/core/scheduler/SchedulerTask;
3 4 6 f Ljava/util/concurrent/Future<*>;
5 7 6 f Ljava/util/concurrent/Future<*>;
MethodParameters:
Name Flags
exec
task
delay
unit
static reactor.core.Disposable directSchedulePeriodically(java.util.concurrent.ScheduledExecutorService, java.lang.Runnable, long, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/concurrent/ScheduledExecutorService;Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Lreactor/core/Disposable;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: new reactor.core.scheduler.PeriodicSchedulerTask
dup
aload 1
invokespecial reactor.core.scheduler.PeriodicSchedulerTask.<init>:(Ljava/lang/Runnable;)V
astore 7
start local 7 1: aload 0
aload 7
lload 2
lload 4
aload 6
invokeinterface java.util.concurrent.ScheduledExecutorService.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
astore 8
start local 8 2: aload 7
aload 8
invokevirtual reactor.core.scheduler.PeriodicSchedulerTask.setFuture:(Ljava/util/concurrent/Future;)V
3: aload 7
areturn
end local 8 end local 7 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 exec Ljava/util/concurrent/ScheduledExecutorService;
0 4 1 task Ljava/lang/Runnable;
0 4 2 initialDelay J
0 4 4 period J
0 4 6 unit Ljava/util/concurrent/TimeUnit;
1 4 7 sr Lreactor/core/scheduler/PeriodicSchedulerTask;
2 4 8 f Ljava/util/concurrent/Future<*>;
MethodParameters:
Name Flags
exec
task
initialDelay
period
unit
static reactor.core.Disposable workerSchedule(java.util.concurrent.ScheduledExecutorService, reactor.core.Disposable$Composite, java.lang.Runnable, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/concurrent/ScheduledExecutorService;Lreactor/core/Disposable$Composite;Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lreactor/core/Disposable;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: new reactor.core.scheduler.WorkerTask
dup
aload 2
aload 1
invokespecial reactor.core.scheduler.WorkerTask.<init>:(Ljava/lang/Runnable;Lreactor/core/Disposable$Composite;)V
astore 6
start local 6 1: aload 1
aload 6
invokeinterface reactor.core.Disposable$Composite.add:(Lreactor/core/Disposable;)Z
ifne 3
2: invokestatic reactor.core.Exceptions.failWithRejected:()Ljava/util/concurrent/RejectedExecutionException;
athrow
3: StackMap locals: reactor.core.scheduler.WorkerTask
StackMap stack:
lload 3
lconst_0
lcmp
ifgt 6
4: aload 0
aload 6
invokeinterface java.util.concurrent.ScheduledExecutorService.submit:(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
astore 7
start local 7 5: goto 7
end local 7 6: StackMap locals:
StackMap stack:
aload 0
aload 6
lload 3
aload 5
invokeinterface java.util.concurrent.ScheduledExecutorService.schedule:(Ljava/util/concurrent/Callable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
astore 7
start local 7 7: StackMap locals: java.util.concurrent.Future
StackMap stack:
aload 6
aload 7
invokevirtual reactor.core.scheduler.WorkerTask.setFuture:(Ljava/util/concurrent/Future;)V
end local 7 8: goto 12
9: StackMap locals: java.util.concurrent.ScheduledExecutorService reactor.core.Disposable$Composite java.lang.Runnable long java.util.concurrent.TimeUnit reactor.core.scheduler.WorkerTask
StackMap stack: java.util.concurrent.RejectedExecutionException
astore 7
start local 7 10: aload 6
invokevirtual reactor.core.scheduler.WorkerTask.dispose:()V
11: aload 7
athrow
end local 7 12: StackMap locals:
StackMap stack:
aload 6
areturn
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 13 0 exec Ljava/util/concurrent/ScheduledExecutorService;
0 13 1 tasks Lreactor/core/Disposable$Composite;
0 13 2 task Ljava/lang/Runnable;
0 13 3 delay J
0 13 5 unit Ljava/util/concurrent/TimeUnit;
1 13 6 sr Lreactor/core/scheduler/WorkerTask;
5 6 7 f Ljava/util/concurrent/Future<*>;
7 8 7 f Ljava/util/concurrent/Future<*>;
10 12 7 ex Ljava/util/concurrent/RejectedExecutionException;
Exception table:
from to target type
3 8 9 Class java.util.concurrent.RejectedExecutionException
MethodParameters:
Name Flags
exec
tasks
task
delay
unit
static reactor.core.Disposable workerSchedulePeriodically(java.util.concurrent.ScheduledExecutorService, reactor.core.Disposable$Composite, java.lang.Runnable, long, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/concurrent/ScheduledExecutorService;Lreactor/core/Disposable$Composite;Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Lreactor/core/Disposable;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 5 start local 7 0: lload 5
lconst_0
lcmp
ifgt 16
1: new reactor.core.scheduler.InstantPeriodicWorkerTask
dup
aload 2
aload 0
aload 1
invokespecial reactor.core.scheduler.InstantPeriodicWorkerTask.<init>:(Ljava/lang/Runnable;Ljava/util/concurrent/ExecutorService;Lreactor/core/Disposable$Composite;)V
2: astore 8
start local 8 3: lload 3
lconst_0
lcmp
ifgt 6
4: aload 0
aload 8
invokeinterface java.util.concurrent.ScheduledExecutorService.submit:(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
astore 9
start local 9 5: goto 7
end local 9 6: StackMap locals: reactor.core.scheduler.InstantPeriodicWorkerTask
StackMap stack:
aload 0
aload 8
lload 3
aload 7
invokeinterface java.util.concurrent.ScheduledExecutorService.schedule:(Ljava/util/concurrent/Callable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
astore 9
start local 9 7: StackMap locals: java.util.concurrent.Future
StackMap stack:
aload 8
aload 9
invokevirtual reactor.core.scheduler.InstantPeriodicWorkerTask.setFirst:(Ljava/util/concurrent/Future;)V
end local 9 8: goto 15
9: StackMap locals: java.util.concurrent.ScheduledExecutorService reactor.core.Disposable$Composite java.lang.Runnable long long java.util.concurrent.TimeUnit reactor.core.scheduler.InstantPeriodicWorkerTask
StackMap stack: java.util.concurrent.RejectedExecutionException
astore 9
start local 9 10: aload 8
invokevirtual reactor.core.scheduler.InstantPeriodicWorkerTask.dispose:()V
11: aload 9
athrow
end local 9 12: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 9
start local 9 13: aload 8
invokevirtual reactor.core.scheduler.InstantPeriodicWorkerTask.dispose:()V
14: new java.util.concurrent.RejectedExecutionException
dup
aload 9
invokespecial java.util.concurrent.RejectedExecutionException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 15: StackMap locals:
StackMap stack:
aload 8
areturn
end local 8 16: StackMap locals:
StackMap stack:
new reactor.core.scheduler.PeriodicWorkerTask
dup
aload 2
aload 1
invokespecial reactor.core.scheduler.PeriodicWorkerTask.<init>:(Ljava/lang/Runnable;Lreactor/core/Disposable$Composite;)V
astore 8
start local 8 17: aload 1
aload 8
invokeinterface reactor.core.Disposable$Composite.add:(Lreactor/core/Disposable;)Z
ifne 19
18: invokestatic reactor.core.Exceptions.failWithRejected:()Ljava/util/concurrent/RejectedExecutionException;
athrow
19: StackMap locals: reactor.core.scheduler.PeriodicWorkerTask
StackMap stack:
aload 0
aload 8
lload 3
lload 5
aload 7
invokeinterface java.util.concurrent.ScheduledExecutorService.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
astore 9
start local 9 20: aload 8
aload 9
invokevirtual reactor.core.scheduler.PeriodicWorkerTask.setFuture:(Ljava/util/concurrent/Future;)V
end local 9 21: goto 28
22: StackMap locals:
StackMap stack: java.util.concurrent.RejectedExecutionException
astore 9
start local 9 23: aload 8
invokevirtual reactor.core.scheduler.PeriodicWorkerTask.dispose:()V
24: aload 9
athrow
end local 9 25: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 9
start local 9 26: aload 8
invokevirtual reactor.core.scheduler.PeriodicWorkerTask.dispose:()V
27: new java.util.concurrent.RejectedExecutionException
dup
aload 9
invokespecial java.util.concurrent.RejectedExecutionException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 28: StackMap locals:
StackMap stack:
aload 8
areturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 exec Ljava/util/concurrent/ScheduledExecutorService;
0 29 1 tasks Lreactor/core/Disposable$Composite;
0 29 2 task Ljava/lang/Runnable;
0 29 3 initialDelay J
0 29 5 period J
0 29 7 unit Ljava/util/concurrent/TimeUnit;
3 16 8 isr Lreactor/core/scheduler/InstantPeriodicWorkerTask;
5 6 9 f Ljava/util/concurrent/Future<*>;
7 8 9 f Ljava/util/concurrent/Future<*>;
10 12 9 ex Ljava/util/concurrent/RejectedExecutionException;
13 15 9 ex Ljava/lang/RuntimeException;
17 29 8 sr Lreactor/core/scheduler/PeriodicWorkerTask;
20 21 9 f Ljava/util/concurrent/Future<*>;
23 25 9 ex Ljava/util/concurrent/RejectedExecutionException;
26 28 9 ex Ljava/lang/RuntimeException;
Exception table:
from to target type
3 8 9 Class java.util.concurrent.RejectedExecutionException
3 8 12 Class java.lang.IllegalArgumentException
3 8 12 Class java.lang.NullPointerException
19 21 22 Class java.util.concurrent.RejectedExecutionException
19 21 25 Class java.lang.IllegalArgumentException
19 21 25 Class java.lang.NullPointerException
MethodParameters:
Name Flags
exec
tasks
task
initialDelay
period
unit
static java.util.concurrent.ScheduledExecutorService decorateExecutorService(java.lang.String, java.util.function.Supplier<? extends java.util.concurrent.ScheduledExecutorService>);
descriptor: (Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic reactor.core.scheduler.Schedulers.factory:Lreactor/core/scheduler/Schedulers$Factory;
aload 0
aload 1
invokeinterface reactor.core.scheduler.Schedulers$Factory.decorateExecutorService:(Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/concurrent/ScheduledExecutorService;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 schedulerType Ljava/lang/String;
0 1 1 actual Ljava/util/function/Supplier<+Ljava/util/concurrent/ScheduledExecutorService;>;
Signature: (Ljava/lang/String;Ljava/util/function/Supplier<+Ljava/util/concurrent/ScheduledExecutorService;>;)Ljava/util/concurrent/ScheduledExecutorService;
MethodParameters:
Name Flags
schedulerType
actual
static final java.lang.Object scanExecutor(java.util.concurrent.Executor, reactor.core.Scannable$Attr);
descriptor: (Ljava/util/concurrent/Executor;Lreactor/core/Scannable$Attr;)Ljava/lang/Object;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
instanceof reactor.core.scheduler.DelegateServiceScheduler$UnsupportedScheduledExecutorService
ifeq 2
1: aload 0
checkcast reactor.core.scheduler.DelegateServiceScheduler$UnsupportedScheduledExecutorService
invokevirtual reactor.core.scheduler.DelegateServiceScheduler$UnsupportedScheduledExecutorService.get:()Ljava/util/concurrent/ExecutorService;
astore 0
2: StackMap locals:
StackMap stack:
aload 0
instanceof reactor.core.Scannable
ifeq 4
3: aload 0
checkcast reactor.core.Scannable
aload 1
invokeinterface reactor.core.Scannable.scanUnsafe:(Lreactor/core/Scannable$Attr;)Ljava/lang/Object;
areturn
4: StackMap locals:
StackMap stack:
aload 0
instanceof java.util.concurrent.ExecutorService
ifeq 8
5: aload 0
checkcast java.util.concurrent.ExecutorService
astore 2
start local 2 6: aload 1
getstatic reactor.core.Scannable$Attr.TERMINATED:Lreactor/core/Scannable$Attr;
if_acmpne 7
aload 2
invokeinterface java.util.concurrent.ExecutorService.isTerminated:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
7: StackMap locals: java.util.concurrent.ExecutorService
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.CANCELLED:Lreactor/core/Scannable$Attr;
if_acmpne 8
aload 2
invokeinterface java.util.concurrent.ExecutorService.isShutdown:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 2 8: StackMap locals:
StackMap stack:
aload 0
instanceof java.util.concurrent.ThreadPoolExecutor
ifeq 13
9: aload 0
checkcast java.util.concurrent.ThreadPoolExecutor
astore 2
start local 2 10: aload 1
getstatic reactor.core.Scannable$Attr.CAPACITY:Lreactor/core/Scannable$Attr;
if_acmpne 11
aload 2
invokevirtual java.util.concurrent.ThreadPoolExecutor.getMaximumPoolSize:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
11: StackMap locals: java.util.concurrent.ThreadPoolExecutor
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.BUFFERED:Lreactor/core/Scannable$Attr;
if_acmpne 12
aload 2
invokevirtual java.util.concurrent.ThreadPoolExecutor.getTaskCount:()J
aload 2
invokevirtual java.util.concurrent.ThreadPoolExecutor.getCompletedTaskCount:()J
lsub
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.lang.Long.intValue:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
12: StackMap locals:
StackMap stack:
aload 1
getstatic reactor.core.Scannable$Attr.LARGE_BUFFERED:Lreactor/core/Scannable$Attr;
if_acmpne 13
aload 2
invokevirtual java.util.concurrent.ThreadPoolExecutor.getTaskCount:()J
aload 2
invokevirtual java.util.concurrent.ThreadPoolExecutor.getCompletedTaskCount:()J
lsub
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
end local 2 13: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 executor Ljava/util/concurrent/Executor;
0 14 1 key Lreactor/core/Scannable$Attr;
6 8 2 service Ljava/util/concurrent/ExecutorService;
10 13 2 poolExecutor Ljava/util/concurrent/ThreadPoolExecutor;
RuntimeVisibleAnnotations:
reactor.util.annotation.Nullable()
MethodParameters:
Name Flags
executor
key
private static java.lang.Integer lambda$1();
descriptor: ()Ljava/lang/Integer;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
invokevirtual java.lang.Runtime.availableProcessors:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static reactor.core.scheduler.Scheduler lambda$2();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=0, args_size=0
0: ldc "elastic"
bipush 60
iconst_1
invokestatic reactor.core.scheduler.Schedulers.newElastic:(Ljava/lang/String;IZ)Lreactor/core/scheduler/Scheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static reactor.core.scheduler.Scheduler lambda$3();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=0, args_size=0
0: ldc "parallel"
getstatic reactor.core.scheduler.Schedulers.DEFAULT_POOL_SIZE:I
iconst_1
invokestatic reactor.core.scheduler.Schedulers.newParallel:(Ljava/lang/String;IZ)Lreactor/core/scheduler/Scheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static reactor.core.scheduler.Scheduler lambda$4();
descriptor: ()Lreactor/core/scheduler/Scheduler;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=0, args_size=0
0: ldc "single"
iconst_1
invokestatic reactor.core.scheduler.Schedulers.newSingle:(Ljava/lang/String;Z)Lreactor/core/scheduler/Scheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Schedulers.java"
NestMembers:
reactor.core.scheduler.Schedulers$1 reactor.core.scheduler.Schedulers$CachedScheduler reactor.core.scheduler.Schedulers$Factory
InnerClasses:
public abstract UncaughtExceptionHandler = java.lang.Thread$UncaughtExceptionHandler of java.lang.Thread
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Composite = reactor.core.Disposable$Composite of reactor.core.Disposable
public Attr = reactor.core.Scannable$Attr of reactor.core.Scannable
final UnsupportedScheduledExecutorService = reactor.core.scheduler.DelegateServiceScheduler$UnsupportedScheduledExecutorService of reactor.core.scheduler.DelegateServiceScheduler
reactor.core.scheduler.Schedulers$1
CachedScheduler = reactor.core.scheduler.Schedulers$CachedScheduler of reactor.core.scheduler.Schedulers
public abstract Factory = reactor.core.scheduler.Schedulers$Factory of reactor.core.scheduler.Schedulers