final class io.netty.channel.epoll.EpollEventLoop extends io.netty.channel.SingleThreadEventLoop
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.netty.channel.epoll.EpollEventLoop
super_class: io.netty.channel.SingleThreadEventLoop
{
private static final io.netty.util.internal.logging.InternalLogger logger;
descriptor: Lio/netty/util/internal/logging/InternalLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.concurrent.atomic.AtomicIntegerFieldUpdater<io.netty.channel.epoll.EpollEventLoop> WAKEN_UP_UPDATER;
descriptor: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater<Lio/netty/channel/epoll/EpollEventLoop;>;
private final io.netty.channel.unix.FileDescriptor epollFd;
descriptor: Lio/netty/channel/unix/FileDescriptor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.channel.unix.FileDescriptor eventFd;
descriptor: Lio/netty/channel/unix/FileDescriptor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.channel.unix.FileDescriptor timerFd;
descriptor: Lio/netty/channel/unix/FileDescriptor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.util.collection.IntObjectMap<io.netty.channel.epoll.AbstractEpollChannel> channels;
descriptor: Lio/netty/util/collection/IntObjectMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lio/netty/util/collection/IntObjectMap<Lio/netty/channel/epoll/AbstractEpollChannel;>;
private final boolean allowGrowing;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.channel.epoll.EpollEventArray events;
descriptor: Lio/netty/channel/epoll/EpollEventArray;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.channel.unix.IovArray iovArray;
descriptor: Lio/netty/channel/unix/IovArray;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.channel.SelectStrategy selectStrategy;
descriptor: Lio/netty/channel/SelectStrategy;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.util.IntSupplier selectNowSupplier;
descriptor: Lio/netty/util/IntSupplier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.Callable<java.lang.Integer> pendingTasksCallable;
descriptor: Ljava/util/concurrent/Callable;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/Callable<Ljava/lang/Integer;>;
private volatile int wakenUp;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile int ioRatio;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
static final long MAX_SCHEDULED_DAYS;
descriptor: J
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lio/netty/channel/epoll/EpollEventLoop;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic io.netty.channel.epoll.EpollEventLoop.$assertionsDisabled:Z
3: ldc Lio/netty/channel/epoll/EpollEventLoop;
invokestatic io.netty.util.internal.logging.InternalLoggerFactory.getInstance:(Ljava/lang/Class;)Lio/netty/util/internal/logging/InternalLogger;
putstatic io.netty.channel.epoll.EpollEventLoop.logger:Lio/netty/util/internal/logging/InternalLogger;
4: ldc Lio/netty/channel/epoll/EpollEventLoop;
ldc "wakenUp"
invokestatic java.util.concurrent.atomic.AtomicIntegerFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
5: putstatic io.netty.channel.epoll.EpollEventLoop.WAKEN_UP_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
6: invokestatic io.netty.channel.epoll.Epoll.ensureAvailability:()V
7: getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
ldc 999999999
invokevirtual java.util.concurrent.TimeUnit.toDays:(J)J
putstatic io.netty.channel.epoll.EpollEventLoop.MAX_SCHEDULED_DAYS:J
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(io.netty.channel.EventLoopGroup, java.util.concurrent.Executor, int, io.netty.channel.SelectStrategy, io.netty.util.concurrent.RejectedExecutionHandler);
descriptor: (Lio/netty/channel/EventLoopGroup;Ljava/util/concurrent/Executor;ILio/netty/channel/SelectStrategy;Lio/netty/util/concurrent/RejectedExecutionHandler;)V
flags: (0x0000)
Code:
stack=6, locals=12, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
iconst_0
getstatic io.netty.channel.epoll.EpollEventLoop.DEFAULT_MAX_PENDING_TASKS:I
aload 5
invokespecial io.netty.channel.SingleThreadEventLoop.<init>:(Lio/netty/channel/EventLoopGroup;Ljava/util/concurrent/Executor;ZILio/netty/util/concurrent/RejectedExecutionHandler;)V
1: aload 0
new io.netty.util.collection.IntObjectHashMap
dup
sipush 4096
invokespecial io.netty.util.collection.IntObjectHashMap.<init>:(I)V
putfield io.netty.channel.epoll.EpollEventLoop.channels:Lio/netty/util/collection/IntObjectMap;
2: aload 0
new io.netty.channel.unix.IovArray
dup
invokespecial io.netty.channel.unix.IovArray.<init>:()V
putfield io.netty.channel.epoll.EpollEventLoop.iovArray:Lio/netty/channel/unix/IovArray;
3: aload 0
new io.netty.channel.epoll.EpollEventLoop$1
dup
aload 0
invokespecial io.netty.channel.epoll.EpollEventLoop$1.<init>:(Lio/netty/channel/epoll/EpollEventLoop;)V
putfield io.netty.channel.epoll.EpollEventLoop.selectNowSupplier:Lio/netty/util/IntSupplier;
4: aload 0
new io.netty.channel.epoll.EpollEventLoop$2
dup
aload 0
invokespecial io.netty.channel.epoll.EpollEventLoop$2.<init>:(Lio/netty/channel/epoll/EpollEventLoop;)V
putfield io.netty.channel.epoll.EpollEventLoop.pendingTasksCallable:Ljava/util/concurrent/Callable;
5: aload 0
bipush 50
putfield io.netty.channel.epoll.EpollEventLoop.ioRatio:I
6: aload 0
aload 4
ldc "strategy"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.channel.SelectStrategy
putfield io.netty.channel.epoll.EpollEventLoop.selectStrategy:Lio/netty/channel/SelectStrategy;
7: iload 3
ifne 11
8: aload 0
iconst_1
putfield io.netty.channel.epoll.EpollEventLoop.allowGrowing:Z
9: aload 0
new io.netty.channel.epoll.EpollEventArray
dup
sipush 4096
invokespecial io.netty.channel.epoll.EpollEventArray.<init>:(I)V
putfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
10: goto 13
11: StackMap locals: io.netty.channel.epoll.EpollEventLoop io.netty.channel.EventLoopGroup java.util.concurrent.Executor int io.netty.channel.SelectStrategy io.netty.util.concurrent.RejectedExecutionHandler
StackMap stack:
aload 0
iconst_0
putfield io.netty.channel.epoll.EpollEventLoop.allowGrowing:Z
12: aload 0
new io.netty.channel.epoll.EpollEventArray
dup
iload 3
invokespecial io.netty.channel.epoll.EpollEventArray.<init>:(I)V
putfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
13: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 14: aconst_null
astore 7
start local 7 15: aconst_null
astore 8
start local 8 16: aconst_null
astore 9
start local 9 17: aload 0
invokestatic io.netty.channel.epoll.Native.newEpollCreate:()Lio/netty/channel/unix/FileDescriptor;
dup
astore 7
putfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
18: aload 0
invokestatic io.netty.channel.epoll.Native.newEventFd:()Lio/netty/channel/unix/FileDescriptor;
dup
astore 8
putfield io.netty.channel.epoll.EpollEventLoop.eventFd:Lio/netty/channel/unix/FileDescriptor;
19: aload 7
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
aload 8
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
getstatic io.netty.channel.epoll.Native.EPOLLIN:I
invokestatic io.netty.channel.epoll.Native.epollCtlAdd:(III)V
20: goto 23
StackMap locals: io.netty.channel.epoll.EpollEventLoop io.netty.channel.EventLoopGroup java.util.concurrent.Executor int io.netty.channel.SelectStrategy io.netty.util.concurrent.RejectedExecutionHandler int io.netty.channel.unix.FileDescriptor io.netty.channel.unix.FileDescriptor io.netty.channel.unix.FileDescriptor
StackMap stack: java.io.IOException
21: astore 10
start local 10 22: new java.lang.IllegalStateException
dup
ldc "Unable to add eventFd filedescriptor to epoll"
aload 10
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 10 23: StackMap locals:
StackMap stack:
aload 0
invokestatic io.netty.channel.epoll.Native.newTimerFd:()Lio/netty/channel/unix/FileDescriptor;
dup
astore 9
putfield io.netty.channel.epoll.EpollEventLoop.timerFd:Lio/netty/channel/unix/FileDescriptor;
24: aload 7
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
aload 9
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
getstatic io.netty.channel.epoll.Native.EPOLLIN:I
getstatic io.netty.channel.epoll.Native.EPOLLET:I
ior
invokestatic io.netty.channel.epoll.Native.epollCtlAdd:(III)V
25: goto 28
StackMap locals:
StackMap stack: java.io.IOException
26: astore 10
start local 10 27: new java.lang.IllegalStateException
dup
ldc "Unable to add timerFd filedescriptor to epoll"
aload 10
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 10 28: StackMap locals:
StackMap stack:
iconst_1
istore 6
29: goto 45
StackMap locals:
StackMap stack: java.lang.Throwable
30: astore 11
31: iload 6
ifne 44
32: aload 7
ifnull 36
33: aload 7
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
34: goto 36
StackMap locals: io.netty.channel.epoll.EpollEventLoop io.netty.channel.EventLoopGroup java.util.concurrent.Executor int io.netty.channel.SelectStrategy io.netty.util.concurrent.RejectedExecutionHandler int io.netty.channel.unix.FileDescriptor io.netty.channel.unix.FileDescriptor io.netty.channel.unix.FileDescriptor top java.lang.Throwable
StackMap stack: java.lang.Exception
35: pop
36: StackMap locals:
StackMap stack:
aload 8
ifnull 40
37: aload 8
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
38: goto 40
StackMap locals:
StackMap stack: java.lang.Exception
39: pop
40: StackMap locals:
StackMap stack:
aload 9
ifnull 44
41: aload 9
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
42: goto 44
StackMap locals:
StackMap stack: java.lang.Exception
43: pop
44: StackMap locals:
StackMap stack:
aload 11
athrow
45: StackMap locals: io.netty.channel.epoll.EpollEventLoop io.netty.channel.EventLoopGroup java.util.concurrent.Executor int io.netty.channel.SelectStrategy io.netty.util.concurrent.RejectedExecutionHandler int io.netty.channel.unix.FileDescriptor io.netty.channel.unix.FileDescriptor io.netty.channel.unix.FileDescriptor
StackMap stack:
iload 6
ifne 58
46: aload 7
ifnull 50
47: aload 7
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
48: goto 50
StackMap locals:
StackMap stack: java.lang.Exception
49: pop
50: StackMap locals:
StackMap stack:
aload 8
ifnull 54
51: aload 8
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
52: goto 54
StackMap locals:
StackMap stack: java.lang.Exception
53: pop
54: StackMap locals:
StackMap stack:
aload 9
ifnull 58
55: aload 9
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
56: goto 58
StackMap locals:
StackMap stack: java.lang.Exception
57: pop
58: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 59 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 59 1 parent Lio/netty/channel/EventLoopGroup;
0 59 2 executor Ljava/util/concurrent/Executor;
0 59 3 maxEvents I
0 59 4 strategy Lio/netty/channel/SelectStrategy;
0 59 5 rejectedExecutionHandler Lio/netty/util/concurrent/RejectedExecutionHandler;
14 59 6 success Z
15 59 7 epollFd Lio/netty/channel/unix/FileDescriptor;
16 59 8 eventFd Lio/netty/channel/unix/FileDescriptor;
17 59 9 timerFd Lio/netty/channel/unix/FileDescriptor;
22 23 10 e Ljava/io/IOException;
27 28 10 e Ljava/io/IOException;
Exception table:
from to target type
19 20 21 Class java.io.IOException
24 25 26 Class java.io.IOException
17 30 30 any
33 34 35 Class java.lang.Exception
37 38 39 Class java.lang.Exception
41 42 43 Class java.lang.Exception
47 48 49 Class java.lang.Exception
51 52 53 Class java.lang.Exception
55 56 57 Class java.lang.Exception
MethodParameters:
Name Flags
parent
executor
maxEvents
strategy
rejectedExecutionHandler
io.netty.channel.unix.IovArray cleanArray();
descriptor: ()Lio/netty/channel/unix/IovArray;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.iovArray:Lio/netty/channel/unix/IovArray;
invokevirtual io.netty.channel.unix.IovArray.clear:()V
1: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.iovArray:Lio/netty/channel/unix/IovArray;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/channel/epoll/EpollEventLoop;
protected void wakeup(boolean);
descriptor: (Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifne 2
getstatic io.netty.channel.epoll.EpollEventLoop.WAKEN_UP_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.compareAndSet:(Ljava/lang/Object;II)Z
ifeq 2
1: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.eventFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
lconst_1
invokestatic io.netty.channel.epoll.Native.eventFdWrite:(IJ)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 3 1 inEventLoop Z
MethodParameters:
Name Flags
inEventLoop
void add(io.netty.channel.epoll.AbstractEpollChannel);
descriptor: (Lio/netty/channel/epoll/AbstractEpollChannel;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: getstatic io.netty.channel.epoll.EpollEventLoop.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.inEventLoop:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
getfield io.netty.channel.epoll.AbstractEpollChannel.socket:Lio/netty/channel/epoll/LinuxSocket;
invokevirtual io.netty.channel.epoll.LinuxSocket.intValue:()I
istore 2
start local 2 2: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
iload 2
aload 1
getfield io.netty.channel.epoll.AbstractEpollChannel.flags:I
invokestatic io.netty.channel.epoll.Native.epollCtlAdd:(III)V
3: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.channels:Lio/netty/util/collection/IntObjectMap;
iload 2
aload 1
invokeinterface io.netty.util.collection.IntObjectMap.put:(ILjava/lang/Object;)Ljava/lang/Object;
pop
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 5 1 ch Lio/netty/channel/epoll/AbstractEpollChannel;
2 5 2 fd I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ch
void modify(io.netty.channel.epoll.AbstractEpollChannel);
descriptor: (Lio/netty/channel/epoll/AbstractEpollChannel;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic io.netty.channel.epoll.EpollEventLoop.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.inEventLoop:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
aload 1
getfield io.netty.channel.epoll.AbstractEpollChannel.socket:Lio/netty/channel/epoll/LinuxSocket;
invokevirtual io.netty.channel.epoll.LinuxSocket.intValue:()I
aload 1
getfield io.netty.channel.epoll.AbstractEpollChannel.flags:I
invokestatic io.netty.channel.epoll.Native.epollCtlMod:(III)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 3 1 ch Lio/netty/channel/epoll/AbstractEpollChannel;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ch
void remove(io.netty.channel.epoll.AbstractEpollChannel);
descriptor: (Lio/netty/channel/epoll/AbstractEpollChannel;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: getstatic io.netty.channel.epoll.EpollEventLoop.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.inEventLoop:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.netty.channel.epoll.AbstractEpollChannel.isOpen:()Z
ifeq 5
2: aload 1
getfield io.netty.channel.epoll.AbstractEpollChannel.socket:Lio/netty/channel/epoll/LinuxSocket;
invokevirtual io.netty.channel.epoll.LinuxSocket.intValue:()I
istore 2
start local 2 3: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.channels:Lio/netty/util/collection/IntObjectMap;
iload 2
invokeinterface io.netty.util.collection.IntObjectMap.remove:(I)Ljava/lang/Object;
ifnull 5
4: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
aload 1
invokevirtual io.netty.channel.epoll.AbstractEpollChannel.fd:()Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
invokestatic io.netty.channel.epoll.Native.epollCtlDel:(II)V
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 6 1 ch Lio/netty/channel/epoll/AbstractEpollChannel;
3 5 2 fd I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ch
protected java.util.Queue<java.lang.Runnable> newTaskQueue(int);
descriptor: (I)Ljava/util/Queue;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ldc 2147483647
if_icmpne 1
invokestatic io.netty.util.internal.PlatformDependent.newMpscQueue:()Ljava/util/Queue;
goto 2
1: StackMap locals:
StackMap stack:
iload 1
invokestatic io.netty.util.internal.PlatformDependent.newMpscQueue:(I)Ljava/util/Queue;
2: StackMap locals:
StackMap stack: java.util.Queue
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 3 1 maxPendingTasks I
Signature: (I)Ljava/util/Queue<Ljava/lang/Runnable;>;
MethodParameters:
Name Flags
maxPendingTasks
public int pendingTasks();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.inEventLoop:()Z
ifeq 2
1: aload 0
invokespecial io.netty.channel.SingleThreadEventLoop.pendingTasks:()I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.pendingTasksCallable:Ljava/util/concurrent/Callable;
invokevirtual io.netty.channel.epoll.EpollEventLoop.submit:(Ljava/util/concurrent/Callable;)Lio/netty/util/concurrent/Future;
invokeinterface io.netty.util.concurrent.Future.syncUninterruptibly:()Lio/netty/util/concurrent/Future;
invokeinterface io.netty.util.concurrent.Future.getNow:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/channel/epoll/EpollEventLoop;
public int getIoRatio();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.ioRatio:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/channel/epoll/EpollEventLoop;
public void setIoRatio(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifle 1
iload 1
bipush 100
if_icmple 2
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "ioRatio: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " (expected: 0 < ioRatio <= 100)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield io.netty.channel.epoll.EpollEventLoop.ioRatio:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 4 1 ioRatio I
MethodParameters:
Name Flags
ioRatio
private int epollWait(boolean);
descriptor: (Z)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=5, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.hasTasks:()Z
ifeq 2
1: aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.epollWaitNow:()I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic java.lang.System.nanoTime:()J
invokevirtual io.netty.channel.epoll.EpollEventLoop.delayNanos:(J)J
lstore 2
start local 2 3: lload 2
ldc 1000000000
ldiv
ldc 2147483647
invokestatic java.lang.Math.min:(JJ)J
l2i
istore 4
start local 4 4: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.timerFd:Lio/netty/channel/unix/FileDescriptor;
iload 4
5: lload 2
iload 4
i2l
ldc 1000000000
lmul
lsub
ldc 2147483647
invokestatic java.lang.Math.min:(JJ)J
l2i
6: invokestatic io.netty.channel.epoll.Native.epollWait:(Lio/netty/channel/unix/FileDescriptor;Lio/netty/channel/epoll/EpollEventArray;Lio/netty/channel/unix/FileDescriptor;II)I
ireturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 7 1 oldWakeup Z
3 7 2 totalDelay J
4 7 4 delaySeconds I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
oldWakeup
private int epollWaitNow();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.timerFd:Lio/netty/channel/unix/FileDescriptor;
iconst_0
iconst_0
invokestatic io.netty.channel.epoll.Native.epollWait:(Lio/netty/channel/unix/FileDescriptor;Lio/netty/channel/epoll/EpollEventArray;Lio/netty/channel/unix/FileDescriptor;II)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/channel/epoll/EpollEventLoop;
Exceptions:
throws java.io.IOException
protected void run();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=8, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.selectStrategy:Lio/netty/channel/SelectStrategy;
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.selectNowSupplier:Lio/netty/util/IntSupplier;
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.hasTasks:()Z
invokeinterface io.netty.channel.SelectStrategy.calculateStrategy:(Lio/netty/util/IntSupplier;Z)I
istore 1
start local 1 1: iload 1
tableswitch { // -2 - -1
-2: 2
-1: 3
default: 8
}
2: StackMap locals: int
StackMap stack:
goto 0
3: StackMap locals:
StackMap stack:
aload 0
getstatic io.netty.channel.epoll.EpollEventLoop.WAKEN_UP_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
aload 0
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.getAndSet:(Ljava/lang/Object;I)I
iconst_1
if_icmpne 4
iconst_1
goto 5
StackMap locals:
StackMap stack: io.netty.channel.epoll.EpollEventLoop
4: iconst_0
StackMap locals: io.netty.channel.epoll.EpollEventLoop int
StackMap stack: io.netty.channel.epoll.EpollEventLoop int
5: invokevirtual io.netty.channel.epoll.EpollEventLoop.epollWait:(Z)I
istore 1
6: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.wakenUp:I
iconst_1
if_icmpne 8
7: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.eventFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
lconst_1
invokestatic io.netty.channel.epoll.Native.eventFdWrite:(IJ)V
8: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.ioRatio:I
istore 2
start local 2 9: iload 2
bipush 100
if_icmpne 18
10: iload 1
ifle 16
11: aload 0
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
iload 1
invokevirtual io.netty.channel.epoll.EpollEventLoop.processReady:(Lio/netty/channel/epoll/EpollEventArray;I)V
12: goto 16
StackMap locals: io.netty.channel.epoll.EpollEventLoop int int
StackMap stack: java.lang.Throwable
13: astore 3
14: aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.runAllTasks:()Z
pop
15: aload 3
athrow
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.runAllTasks:()Z
pop
17: goto 28
18: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
lstore 3
start local 3 19: iload 1
ifle 26
20: aload 0
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
iload 1
invokevirtual io.netty.channel.epoll.EpollEventLoop.processReady:(Lio/netty/channel/epoll/EpollEventArray;I)V
21: goto 26
StackMap locals: io.netty.channel.epoll.EpollEventLoop int int long
StackMap stack: java.lang.Throwable
22: astore 5
23: invokestatic java.lang.System.nanoTime:()J
lload 3
lsub
lstore 6
start local 6 24: aload 0
lload 6
bipush 100
iload 2
isub
i2l
lmul
iload 2
i2l
ldiv
invokevirtual io.netty.channel.epoll.EpollEventLoop.runAllTasks:(J)Z
pop
end local 6 25: aload 5
athrow
26: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
lload 3
lsub
lstore 6
start local 6 27: aload 0
lload 6
bipush 100
iload 2
isub
i2l
lmul
iload 2
i2l
ldiv
invokevirtual io.netty.channel.epoll.EpollEventLoop.runAllTasks:(J)Z
pop
end local 6 end local 3 28: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.allowGrowing:Z
ifeq 33
iload 1
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
invokevirtual io.netty.channel.epoll.EpollEventArray.length:()I
if_icmpne 33
29: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
invokevirtual io.netty.channel.epoll.EpollEventArray.increase:()V
end local 2 end local 1 30: goto 33
StackMap locals: io.netty.channel.epoll.EpollEventLoop
StackMap stack: java.lang.Throwable
31: astore 1
start local 1 32: aload 1
invokestatic io.netty.channel.epoll.EpollEventLoop.handleLoopException:(Ljava/lang/Throwable;)V
end local 1 33: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.isShuttingDown:()Z
ifeq 0
34: aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.closeAll:()V
35: aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.confirmShutdown:()Z
ifeq 0
36: goto 40
37: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
start local 1 38: aload 1
invokestatic io.netty.channel.epoll.EpollEventLoop.handleLoopException:(Ljava/lang/Throwable;)V
end local 1 39: goto 0
40: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lio/netty/channel/epoll/EpollEventLoop;
1 30 1 strategy I
9 30 2 ioRatio I
19 28 3 ioStartTime J
24 25 6 ioTime J
27 28 6 ioTime J
32 33 1 t Ljava/lang/Throwable;
38 39 1 t Ljava/lang/Throwable;
Exception table:
from to target type
10 13 13 any
19 22 22 any
0 2 31 Class java.lang.Throwable
3 30 31 Class java.lang.Throwable
33 36 37 Class java.lang.Throwable
private static void handleLoopException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic io.netty.channel.epoll.EpollEventLoop.logger:Lio/netty/util/internal/logging/InternalLogger;
ldc "Unexpected exception in the selector loop."
aload 0
invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
1: ldc 1000
invokestatic java.lang.Thread.sleep:(J)V
2: goto 4
StackMap locals:
StackMap stack: java.lang.InterruptedException
3: pop
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 t Ljava/lang/Throwable;
Exception table:
from to target type
1 2 3 Class java.lang.InterruptedException
MethodParameters:
Name Flags
t
private void closeAll();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.channel.epoll.EpollEventLoop.epollWaitNow:()I
pop
1: goto 3
StackMap locals:
StackMap stack: java.io.IOException
2: pop
3: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.channels:Lio/netty/util/collection/IntObjectMap;
invokeinterface io.netty.util.collection.IntObjectMap.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
start local 1 4: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.channels:Lio/netty/util/collection/IntObjectMap;
invokeinterface io.netty.util.collection.IntObjectMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 7
StackMap locals: io.netty.channel.epoll.EpollEventLoop java.util.Collection top java.util.Iterator
StackMap stack:
5: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.netty.channel.epoll.AbstractEpollChannel
astore 2
start local 2 6: aload 1
aload 2
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 2 7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
8: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 11
StackMap locals:
StackMap stack:
9: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.netty.channel.epoll.AbstractEpollChannel
astore 2
start local 2 10: aload 2
invokevirtual io.netty.channel.epoll.AbstractEpollChannel.unsafe:()Lio/netty/channel/Channel$Unsafe;
aload 2
invokevirtual io.netty.channel.epoll.AbstractEpollChannel.unsafe:()Lio/netty/channel/Channel$Unsafe;
invokeinterface io.netty.channel.Channel$Unsafe.voidPromise:()Lio/netty/channel/ChannelPromise;
invokeinterface io.netty.channel.Channel$Unsafe.close:(Lio/netty/channel/ChannelPromise;)V
end local 2 11: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/netty/channel/epoll/EpollEventLoop;
4 13 1 array Ljava/util/Collection<Lio/netty/channel/epoll/AbstractEpollChannel;>;
6 7 2 channel Lio/netty/channel/epoll/AbstractEpollChannel;
10 11 2 ch Lio/netty/channel/epoll/AbstractEpollChannel;
Exception table:
from to target type
0 1 2 Class java.io.IOException
private void processReady(io.netty.channel.epoll.EpollEventArray, int);
descriptor: (Lio/netty/channel/epoll/EpollEventArray;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 24
2: StackMap locals: int
StackMap stack:
aload 1
iload 3
invokevirtual io.netty.channel.epoll.EpollEventArray.fd:(I)I
istore 4
start local 4 3: iload 4
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.eventFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
if_icmpne 6
4: iload 4
invokestatic io.netty.channel.epoll.Native.eventFdRead:(I)V
5: goto 23
StackMap locals: int
StackMap stack:
6: iload 4
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.timerFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
if_icmpne 9
7: iload 4
invokestatic io.netty.channel.epoll.Native.timerFdRead:(I)V
8: goto 23
9: StackMap locals:
StackMap stack:
aload 1
iload 3
invokevirtual io.netty.channel.epoll.EpollEventArray.events:(I)I
i2l
lstore 5
start local 5 10: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.channels:Lio/netty/util/collection/IntObjectMap;
iload 4
invokeinterface io.netty.util.collection.IntObjectMap.get:(I)Ljava/lang/Object;
checkcast io.netty.channel.epoll.AbstractEpollChannel
astore 7
start local 7 11: aload 7
ifnull 20
12: aload 7
invokevirtual io.netty.channel.epoll.AbstractEpollChannel.unsafe:()Lio/netty/channel/Channel$Unsafe;
checkcast io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe
astore 8
start local 8 13: lload 5
getstatic io.netty.channel.epoll.Native.EPOLLERR:I
getstatic io.netty.channel.epoll.Native.EPOLLOUT:I
ior
i2l
land
lconst_0
lcmp
ifeq 15
14: aload 8
invokevirtual io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollOutReady:()V
15: StackMap locals: long io.netty.channel.epoll.AbstractEpollChannel io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe
StackMap stack:
lload 5
getstatic io.netty.channel.epoll.Native.EPOLLERR:I
getstatic io.netty.channel.epoll.Native.EPOLLIN:I
ior
i2l
land
lconst_0
lcmp
ifeq 17
16: aload 8
invokevirtual io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollInReady:()V
17: StackMap locals:
StackMap stack:
lload 5
getstatic io.netty.channel.epoll.Native.EPOLLRDHUP:I
i2l
land
lconst_0
lcmp
ifeq 23
18: aload 8
invokevirtual io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.epollRdHupReady:()V
end local 8 19: goto 23
20: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.intValue:()I
iload 4
invokestatic io.netty.channel.epoll.Native.epollCtlDel:(II)V
21: goto 23
StackMap locals:
StackMap stack: java.io.IOException
22: pop
end local 7 end local 5 end local 4 23: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
24: iload 3
iload 2
if_icmplt 2
end local 3 25: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 26 1 events Lio/netty/channel/epoll/EpollEventArray;
0 26 2 ready I
1 25 3 i I
3 23 4 fd I
10 23 5 ev J
11 23 7 ch Lio/netty/channel/epoll/AbstractEpollChannel;
13 19 8 unsafe Lio/netty/channel/epoll/AbstractEpollChannel$AbstractEpollUnsafe;
Exception table:
from to target type
20 21 22 Class java.io.IOException
MethodParameters:
Name Flags
events
ready
protected void cleanup();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.epollFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
1: goto 4
StackMap locals:
StackMap stack: java.io.IOException
2: astore 1
start local 1 3: getstatic io.netty.channel.epoll.EpollEventLoop.logger:Lio/netty/util/internal/logging/InternalLogger;
ldc "Failed to close the epoll fd."
aload 1
invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 4: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.eventFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
5: goto 8
StackMap locals:
StackMap stack: java.io.IOException
6: astore 1
start local 1 7: getstatic io.netty.channel.epoll.EpollEventLoop.logger:Lio/netty/util/internal/logging/InternalLogger;
ldc "Failed to close the event fd."
aload 1
invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 8: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.timerFd:Lio/netty/channel/unix/FileDescriptor;
invokevirtual io.netty.channel.unix.FileDescriptor.close:()V
9: goto 17
StackMap locals:
StackMap stack: java.io.IOException
10: astore 1
start local 1 11: getstatic io.netty.channel.epoll.EpollEventLoop.logger:Lio/netty/util/internal/logging/InternalLogger;
ldc "Failed to close the timer fd."
aload 1
invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 12: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 2
14: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.iovArray:Lio/netty/channel/unix/IovArray;
invokevirtual io.netty.channel.unix.IovArray.release:()V
15: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
invokevirtual io.netty.channel.epoll.EpollEventArray.free:()V
16: aload 2
athrow
17: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.channel.epoll.EpollEventLoop.iovArray:Lio/netty/channel/unix/IovArray;
invokevirtual io.netty.channel.unix.IovArray.release:()V
18: aload 0
getfield io.netty.channel.epoll.EpollEventLoop.events:Lio/netty/channel/epoll/EpollEventArray;
invokevirtual io.netty.channel.epoll.EpollEventArray.free:()V
19: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lio/netty/channel/epoll/EpollEventLoop;
3 4 1 e Ljava/io/IOException;
7 8 1 e Ljava/io/IOException;
11 12 1 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
4 5 6 Class java.io.IOException
8 9 10 Class java.io.IOException
0 13 13 any
protected void validateScheduled(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 3 0: aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toDays:(J)J
lstore 4
start local 4 1: lload 4
getstatic io.netty.channel.epoll.EpollEventLoop.MAX_SCHEDULED_DAYS:J
lcmp
ifle 3
2: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "days: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 4
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " (expected: < "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic io.netty.channel.epoll.EpollEventLoop.MAX_SCHEDULED_DAYS:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: long
StackMap stack:
return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/channel/epoll/EpollEventLoop;
0 4 1 amount J
0 4 3 unit Ljava/util/concurrent/TimeUnit;
1 4 4 days J
MethodParameters:
Name Flags
amount
unit
static int access$0(io.netty.channel.epoll.EpollEventLoop);
descriptor: (Lio/netty/channel/epoll/EpollEventLoop;)I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial io.netty.channel.SingleThreadEventLoop.pendingTasks:()I
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "EpollEventLoop.java"
NestMembers:
io.netty.channel.epoll.EpollEventLoop$1 io.netty.channel.epoll.EpollEventLoop$2
InnerClasses:
public abstract Unsafe = io.netty.channel.Channel$Unsafe of io.netty.channel.Channel
protected abstract AbstractEpollUnsafe = io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe of io.netty.channel.epoll.AbstractEpollChannel
io.netty.channel.epoll.EpollEventLoop$1
io.netty.channel.epoll.EpollEventLoop$2