class jdk.incubator.http.SocketTube$SocketFlowTask implements jdk.incubator.http.internal.common.SequentialScheduler$RestartableTask
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.incubator.http.SocketTube$SocketFlowTask
super_class: java.lang.Object
{
final java.lang.Runnable task;
descriptor: Ljava/lang/Runnable;
flags: (0x0010) ACC_FINAL
private final java.lang.Object monitor;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 // jdk.incubator.http.SocketTube$SocketFlowTask this
start local 1 // java.lang.Runnable task
0: .line 163
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 162
aload 0 /* this */
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield jdk.incubator.http.SocketTube$SocketFlowTask.monitor:Ljava/lang/Object;
2: .line 164
aload 0 /* this */
aload 1 /* task */
putfield jdk.incubator.http.SocketTube$SocketFlowTask.task:Ljava/lang/Runnable;
3: .line 165
return
end local 1 // java.lang.Runnable task
end local 0 // jdk.incubator.http.SocketTube$SocketFlowTask this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/incubator/http/SocketTube$SocketFlowTask;
0 4 1 task Ljava/lang/Runnable;
MethodParameters:
Name Flags
task
public final void run(jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter);
descriptor: (Ljdk/incubator/http/internal/common/SequentialScheduler$DeferredCompleter;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=4, args_size=2
start local 0 // jdk.incubator.http.SocketTube$SocketFlowTask this
start local 1 // jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter taskCompleter
0: .line 170
aload 0 /* this */
getfield jdk.incubator.http.SocketTube$SocketFlowTask.monitor:Ljava/lang/Object;
dup
astore 2
monitorenter
1: .line 171
aload 0 /* this */
getfield jdk.incubator.http.SocketTube$SocketFlowTask.task:Ljava/lang/Runnable;
invokeinterface java.lang.Runnable.run:()V
2: .line 170
aload 2
monitorexit
3: goto 9
StackMap locals: jdk.incubator.http.SocketTube$SocketFlowTask jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: .line 173
StackMap locals: jdk.incubator.http.SocketTube$SocketFlowTask jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter
StackMap stack: java.lang.Throwable
astore 3
7: .line 174
aload 1 /* taskCompleter */
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter.complete:()V
8: .line 175
aload 3
athrow
9: .line 174
StackMap locals:
StackMap stack:
aload 1 /* taskCompleter */
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter.complete:()V
10: .line 176
return
end local 1 // jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter taskCompleter
end local 0 // jdk.incubator.http.SocketTube$SocketFlowTask this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/incubator/http/SocketTube$SocketFlowTask;
0 11 1 taskCompleter Ljdk/incubator/http/internal/common/SequentialScheduler$DeferredCompleter;
Exception table:
from to target type
1 3 4 any
4 5 4 any
0 6 6 any
MethodParameters:
Name Flags
taskCompleter
}
SourceFile: "SocketTube.java"
NestHost: jdk.incubator.http.SocketTube
InnerClasses:
private SocketFlowTask = jdk.incubator.http.SocketTube$SocketFlowTask of jdk.incubator.http.SocketTube
public abstract DeferredCompleter = jdk.incubator.http.internal.common.SequentialScheduler$DeferredCompleter of jdk.incubator.http.internal.common.SequentialScheduler
public abstract RestartableTask = jdk.incubator.http.internal.common.SequentialScheduler$RestartableTask of jdk.incubator.http.internal.common.SequentialScheduler