class com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt implements rx.Subscription
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt
super_class: java.lang.Object
{
private final java.util.concurrent.FutureTask<?> f;
descriptor: Ljava/util/concurrent/FutureTask;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/FutureTask<*>;
private final rx.functions.Func0<java.lang.Boolean> shouldInterruptThread;
descriptor: Lrx/functions/Func0;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lrx/functions/Func0<Ljava/lang/Boolean;>;
private final java.util.concurrent.ThreadPoolExecutor executor;
descriptor: Ljava/util/concurrent/ThreadPoolExecutor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>(java.util.concurrent.FutureTask<?>, rx.functions.Func0<java.lang.Boolean>, java.util.concurrent.ThreadPoolExecutor);
descriptor: (Ljava/util/concurrent/FutureTask;Lrx/functions/Func0;Ljava/util/concurrent/ThreadPoolExecutor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.f:Ljava/util/concurrent/FutureTask;
2: aload 0
aload 2
putfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.shouldInterruptThread:Lrx/functions/Func0;
3: aload 0
aload 3
putfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.executor:Ljava/util/concurrent/ThreadPoolExecutor;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/netflix/hystrix/strategy/concurrency/HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt;
0 5 1 f Ljava/util/concurrent/FutureTask<*>;
0 5 2 shouldInterruptThread Lrx/functions/Func0<Ljava/lang/Boolean;>;
0 5 3 executor Ljava/util/concurrent/ThreadPoolExecutor;
Signature: (Ljava/util/concurrent/FutureTask<*>;Lrx/functions/Func0<Ljava/lang/Boolean;>;Ljava/util/concurrent/ThreadPoolExecutor;)V
MethodParameters:
Name Flags
f
shouldInterruptThread
executor
public void unsubscribe();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.executor:Ljava/util/concurrent/ThreadPoolExecutor;
aload 0
getfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.f:Ljava/util/concurrent/FutureTask;
invokevirtual java.util.concurrent.ThreadPoolExecutor.remove:(Ljava/lang/Runnable;)Z
pop
1: aload 0
getfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.shouldInterruptThread:Lrx/functions/Func0;
invokeinterface rx.functions.Func0.call:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 4
2: aload 0
getfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.f:Ljava/util/concurrent/FutureTask;
iconst_1
invokevirtual java.util.concurrent.FutureTask.cancel:(Z)Z
pop
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.f:Ljava/util/concurrent/FutureTask;
iconst_0
invokevirtual java.util.concurrent.FutureTask.cancel:(Z)Z
pop
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/netflix/hystrix/strategy/concurrency/HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt;
public boolean isUnsubscribed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt.f:Ljava/util/concurrent/FutureTask;
invokevirtual java.util.concurrent.FutureTask.isCancelled:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/hystrix/strategy/concurrency/HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt;
}
SourceFile: "HystrixContextScheduler.java"
NestHost: com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler
InnerClasses:
private FutureCompleterWithConfigurableInterrupt = com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$FutureCompleterWithConfigurableInterrupt of com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler